V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
NotreDame
V2EX  ›  Go 编程语言

golang 实现 office 转 pdf/image 有什么库推荐吗?

  •  
  •   NotreDame · 2021-09-06 11:08:39 +08:00 · 4748 次点击
    这是一个创建于 1174 天前的主题,其中的信息可能已经有所发展或是发生改变。

    已经实现了导出 docx 或者 excel,如何进一步转换为 pdf/image 呢?

    31 条回复    2021-09-10 14:00:54 +08:00
    murmur
        1
    murmur  
       2021-09-06 11:10:30 +08:00   ❤️ 3
    不要想着自己开发,买方案吧,自己开发会开发到你吐血

    我们之前用 libreoffice,excel 的坑被我们踩遍了,word 还好,excel 全是问题
    statumer
        2
    statumer  
       2021-09-06 11:12:29 +08:00 via Android
    以前解决过这个问题,解决方案是写了个 Java 微服务调用 Aspose 包(收费)
    nian8
        3
    nian8  
       2021-09-06 11:14:48 +08:00
    不知道 openoffice 对 excel 的兼容性咋样
    NotreDame
        4
    NotreDame  
    OP
       2021-09-06 11:16:05 +08:00
    @murmur 谢谢,找了一圈开源社区,没找到合适的,这两天还真想自己开发。。。其实需求本身是要实现「文件预览」的功能,我就想曲线救国,所以有了导出 pdf 的想法。无论如何是逃不过 libreoffice 了。

    老哥了解这方面解决方案的价格吗,如果上 w 的话,小公司肯定接受不了。
    murmur
        5
    murmur  
       2021-09-06 11:17:07 +08:00
    @NotreDame w 的话可能不够,全套方案怎么可能这点,而且是按人头付费的,你如果是用户量少直接买云服务按次收费多好
    murmur
        6
    murmur  
       2021-09-06 11:17:24 +08:00
    *人头=并发,他们卖的服务是带在线 office 协作的
    NotreDame
        7
    NotreDame  
    OP
       2021-09-06 11:17:32 +08:00
    @nian8 现在 libreoffice 更有潜力吧
    NotreDame
        8
    NotreDame  
    OP
       2021-09-06 11:19:07 +08:00
    @murmur 有没有推荐的服务商,我去调研下,多谢多谢
    murmur
        9
    murmur  
       2021-09-06 11:20:19 +08:00   ❤️ 1
    我来说一下我们遇到的问题
    1 、隐藏 sheet 没法隐藏,会一并被转换出来
    2 、pdf 不支持拼接,新的 libreoffice 支持拼接功能,就是那种超长的报表拼接到一张纸上,但是这个功能仅限于图片,不支持 pdf
    3 、关联引用不支持离线,excel 的引用支持跨文件公式,如果文件丢失会使用缓存数据,不能编辑但是可以看,libreoffice 是直接报引用错误
    NotreDame
        10
    NotreDame  
    OP
       2021-09-06 11:20:26 +08:00
    @murmur 带协作那肯定就贵了,之前有同事看过 wps 的服务,的确不便宜。
    murmur
        11
    murmur  
       2021-09-06 11:21:33 +08:00
    @NotreDame 那就没什么可以交流的了,我们是按集团采购的预算
    NotreDame
        12
    NotreDame  
    OP
       2021-09-06 11:22:45 +08:00
    @murmur 多谢多谢
    fgwmlhdkkkw
        13
    fgwmlhdkkkw  
       2021-09-06 11:25:23 +08:00   ❤️ 1
    搞一台电脑,做个自动化流程,自动下载,打开,截图,然后上传截图…………🐶
    janxin
        14
    janxin  
       2021-09-06 11:31:26 +08:00 via iPhone
    付钱就可以变强
    bianweiall
        15
    bianweiall  
       2021-09-06 12:22:19 +08:00
    如果可以的话先生成 html 再转 pdf/image
    XiLingHost
        16
    XiLingHost  
       2021-09-06 12:23:47 +08:00
    转 pdf 应该可以调用打印机?
    NotreDame
        17
    NotreDame  
    OP
       2021-09-06 12:52:50 +08:00
    @XiLingHost 不是很懂你的意思,我的场景是接口内生成 office 转 pdf 再写回响应。
    NotreDame
        18
    NotreDame  
    OP
       2021-09-06 12:53:29 +08:00
    @bianweiall 是个路子,我去调研下,谢谢
    eggshell
        19
    eggshell  
       2021-09-06 12:56:59 +08:00
    我们基于这个 Docker 镜像修改搭建的服务,https://github.com/gotenberg/gotenberg,基于 LibreOffice 的,用下来还可以
    eggshell
        20
    eggshell  
       2021-09-06 12:58:27 +08:00   ❤️ 2
    URL 识别有点问题
    Gotenberg:A Docker-powered stateless API for PDF files.

    https://gotenberg.dev/
    https://github.com/gotenberg/gotenberg
    lisongeee
        21
    lisongeee  
       2021-09-06 13:52:43 +08:00
    用 go 语言然后用命令调用 pandoc
    NotreDame
        22
    NotreDame  
    OP
       2021-09-06 14:43:05 +08:00
    @eggshell
    @lisongeee

    大概过了下文档,很有帮助,十分感谢!
    xiongshengyao
        23
    xiongshengyao  
       2021-09-06 15:24:10 +08:00
    看看这个? https://github.com/xsymphony/gouno
    几年前遇到过需要预览 excel 、doc,最后是选择转成 pdf 预览,本质也是 LibreOffice
    NotreDame
        24
    NotreDame  
    OP
       2021-09-06 17:27:07 +08:00
    @xiongshengyao 像 office 预览这种需求,思路是不是都是转成浏览器能直接打开的文本格式( pdf/image ),还有其他思路吗?
    zheshiasd
        25
    zheshiasd  
       2021-09-06 17:30:44 +08:00
    以前试过转 latex 再编译 pdf 就是很慢
    zjsxwc
        26
    zjsxwc  
       2021-09-06 19:55:23 +08:00 via Android
    @fgwmlhdkkkw

    666,我按你的想法写了个 python 脚本,借助 wps 转换任何文件到 pdf

    https://github.com/zjsxwc/wpsconverttopdf
    zyxk
        27
    zyxk  
       2021-09-07 00:59:35 +08:00
    @zjsxwc #26 wps 转换需要会员吧? 用会员转的?
    zjsxwc
        28
    zjsxwc  
       2021-09-07 08:38:13 +08:00
    @zyxk 7 小时 21 分钟前
    普通的导出 pdf 不用会员,加水印之类的特殊导出需要买 wps 会员
    xiongshengyao
        29
    xiongshengyao  
       2021-09-08 10:03:32 +08:00
    @NotreDame 当时做完附件预览,领导提的需求就又演进成在线编辑,后来就又基于 onlyoffice 来做..
    https://github.com/ONLYOFFICE/Docker-DocumentServer
    NotreDame
        30
    NotreDame  
    OP
       2021-09-08 11:14:26 +08:00
    @xiongshengyao 合理怀疑你在我们公司装了监控。。。
    xiongshengyao
        31
    xiongshengyao  
       2021-09-10 14:00:54 +08:00
    @NotreDame 天下领导一般黑
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2801 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 13:15 · PVG 21:15 · LAX 05:15 · JFK 08:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.