有大佬研究过 office 转 pdf 吗?稳定并发的那种

2019-10-11 13:16:01 +08:00
 cz5424

尝试过在 win 上使用 office 的 com 接口来处理文件,虽然方法可行,但是个别情况下会出现弹窗(输入密码,选择打印机之类的),excel,ppt 的文档 两个并发以上的话,会出现其中一个失败。。

想问问各位大佬有什么好的方案来做 office 转 pdf 的 api,如果能在 linux 下更好

3018 次点击
所在节点    问与答
17 条回复
windpinw
2019-10-11 13:29:51 +08:00
Libreoffice, 可以看看
ungrown
2019-10-11 13:36:56 +08:00
pdf 虚拟打印机啊
jamesxu
2019-10-11 13:37:35 +08:00
使用 jodconverter 配合 libreoffice
cz5424
2019-10-11 13:41:55 +08:00
@ungrown 这种坑有点大。。操作打印机接口
lycx5360
2019-10-11 13:45:39 +08:00
itext+jodconverter+libreoffice
cz5424
2019-10-11 13:56:34 +08:00
@lycx5360
@jamesxu
@windpinw

与 win 的 office 转换的相比,转换出来的格式和字体会不会有问题?
sethverlo
2019-10-11 14:02:15 +08:00
之前做过类似的事情,但是太久远了大概说下…

libreoffice unoconv 这类工具的问题在于出来的格式不太稳定,pdfkit 这类工具的问题在于可能没啥人维护了…

还听说过 abiword, 我忘了为什么后来没有用了

其实我想推荐 ms 自己的服务,好像是要自己搭个服务器什么的,那个应该是最稳定的
mhycy
2019-10-11 14:11:26 +08:00
开一堆虚拟机生成 PDF 并返回资源信息,搞个队列排队处理
cz5424
2019-10-11 14:24:59 +08:00
@mhycy 这个不是问题,目前也是这样处理,这个方案最烦的是,部分情况下会弹窗,比如文件带了密码。弹窗之后所有请求都处理不了,直接报错
mhycy
2019-10-11 14:28:39 +08:00
@cz5424 密码问题前置验证搞起来,异常情况处理好,烦归烦也没太好的选择,为了兼容不是 WPS 就是 Office
cz5424
2019-10-11 15:02:23 +08:00
@mhycy 目前不知道怎么处理密码。。有啥方式吗?
agostop
2019-10-11 15:09:13 +08:00
@sethverlo
office online server
目前只发现这个能转成网页方式,包括 ppt 的动画效果
Vegetable
2019-10-11 15:10:58 +08:00
office 自家 webapp,然后按照爬虫逻辑处理。
cz5424
2019-10-11 16:08:08 +08:00
@mhycy 密码使用 zip 解压测试判断了,再观察看看有没有问题
zzl22100048
2019-10-11 17:04:21 +08:00
我这边用的是 collabora code 效率还可以。https://github.com/zzl221000/Docker-CODE.
jamesxu
2019-10-11 20:00:49 +08:00
@cz5424 我这边试的是没问题的,转成的 PDF 跟 word 格式基本一样,字体也是,只要你把 Windows 下那些常见字体拷过去就行,如果要处理 word 内容就配合使用 POI
windpinw
2019-10-12 10:02:20 +08:00
@cz5424 格式没啥问题,字体方面在 linux 下中文字体可能需要注意一下,不过也有解决办法。具体我忘了。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/608205

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX