v2hub
V2EX  ›  问与答

office 转 pdf 有什么高效的方案吗

  •  
  •   v2hub · Jul 27, 2019 · 10194 views
    This topic created in 2668 days ago, the information mentioned may be changed or developed.

    原始文件格式有:doc、docx、xls、xlsx、ppt、pptx
    想要转换成:pdf 格式

    目前网上有一些付费的服务,但是没办法满足我们的需求:

    1. 对文件大小有限制。
    2. 批量转换支持比较弱。
    3. 有一些价格比较高。

    于是我们想自己搭建一个来实现,不知道有木有可用的方案,要求如下:

    1. 服务器是 linux 的,不打算使用 ms 的 api。
    2. 语言方面的要求是 golang、php
    41 replies  •  2020-11-12 13:46:02 +08:00
    Sainnhepark
    Sainnhepark
    Jul 27, 2019 via Android❤️1
    1
    MS office 难道不可以直接转吗
    AzureTT
    AzureTT
    Jul 27, 2019❤️1
    2
    v2hub
    v2hub
    OP
    Jul 27, 2019
    3
    @Sainnhepark
    可以,但是我们要批量的,各个门店上传上来的文档太多了。必须批量处理。

    @AzureTT
    这个看过,没有提供接口,而且也不支持 ppt 转 pdf
    stimulate1797
    stimulate1797
    Jul 27, 2019 via Android❤️1
    4
    aspose 上网找 破解版的 或者付费
    snw
    snw
    Jul 27, 2019 via Android❤️2
    5
    如果是 Windows,直接用 VBA 控制打开文件、打印成 PDF、关闭文件就行了。
    限定 Linux 就困难得多。
    Chowe
    Chowe
    Jul 27, 2019 via iPhone❤️1
    6
    Pandoc+Latex
    nihiue
    nihiue
    Jul 27, 2019 via Android❤️1
    7
    前两天刚写了个各类 pdf 处理 API 的 sdk,https://github.com/Nihiue/ilovepdf-node
    gamecmt
    gamecmt
    Jul 27, 2019 via Android❤️1
    8
    windows 下调用 api 转换成 pdf,用文件夹同步到 linux 下面,这种应该更可行吧。
    soros1990
    soros1990
    Jul 27, 2019❤️1
    9
    另存为 pdf,soeasy
    nihiue
    nihiue
    Jul 27, 2019 via Android❤️1
    10
    自己实现的方案我也调研过,在 Linux 下容易运维+效果靠谱的基本没有,所以最终还是用了三方 API
    katos
    katos
    Jul 27, 2019❤️1
    11
    pdf 虚拟打印机?
    mogutouer
    mogutouer
    Jul 27, 2019❤️1
    12
    word 好像可以写宏?
    inframe
    inframe
    Jul 27, 2019 via Android❤️1
    13
    用个 Windows 系统 这个问题就解决了,GitHub 上一堆 VBS 脚本可以批量转换,
    处理文档上,似乎没有什么软件可以超越 office 全家桶
    sephinh
    sephinh
    Jul 27, 2019 via iPhone❤️1
    14
    pdf 虚拟打印机是最方便的
    burning
    burning
    Jul 27, 2019❤️1
    15
    Mac 上有个 pdftor
    ylrshui
    ylrshui
    Jul 27, 2019 via iPhone❤️1
    16
    根据 office 帮助文档,整个 vba 程序就行,调用 office 自带的另存为功能,自动批量另存为 pdf
    ylrshui
    ylrshui
    Jul 27, 2019 via iPhone❤️1
    17
    excel word ppt 都能另存为 pdf
    chinvo
    chinvo
    Jul 27, 2019 via iPhone❤️1
    19
    要求门店上传 pdf,又不是不能导出
    chinvo
    chinvo
    Jul 27, 2019 via iPhone❤️1
    20
    PHP 有个 phpoffice,但是格式不保证正确
    elfive
    elfive
    Jul 27, 2019 via iPhone❤️1
    21
    装个 Adobe pdf,然后会帮你装个虚拟打印机,然后就是全选,打印
    dazkarieh
    dazkarieh
    Jul 27, 2019
    22
    LibreOffice 或者 pandoc
    ethanlu
    ethanlu
    Jul 27, 2019
    23
    VBA 就可以了,for 循环一下目录里面的所有文件,Select Case 判断一下后缀,不同后缀分别用 word,excel,ppt 打开,再 saveas pdf 就行了
    TIGERII
    TIGERII
    Jul 27, 2019
    24
    openoffice 或者 libreoffice
    robin1985
    robin1985
    Jul 27, 2019
    25
    wps
    Nasei
    Nasei
    Jul 27, 2019 via Android
    26
    要我说,服务器该用 win 的时候就用 win 啊,系统选择又不靠信仰,哪个方便用哪个
    mdluo
    mdluo
    Jul 27, 2019
    27
    LibreOffice 对 M$ Office 的兼容不错,比 OpenOffice 要好,Linux 里装好 LibreOffice 然后一行命令就可以搞定:

    libreoffice --headless --convert-to pdf --outdir <output/dir> /path/to/input.docx
    mdluo
    mdluo
    Jul 27, 2019
    28
    M$ 官方建议不要在服务器上做 Microsoft Office 自动化: https://support.microsoft.com/en-us/help/257757
    zw1one
    zw1one
    Jul 27, 2019 via Android
    29
    建议弄一个 windows server 调 ms office 接口实现。在 linux 上的 office 或多或少会有问题。
    yytsjq
    yytsjq
    Jul 27, 2019❤️1
    30
    用于将 Word 文档转换为 PDF 文件的脚本 (PowerShell)
    https://gallery.technet.microsoft.com/office/Script-to-convert-Word-f702844d
    xuc
    xuc
    Jul 27, 2019 via Android
    31
    https://www.tracker-software.com/products
    批量转可以用上面的 PDF-TOOLS
    iwtbauh
    iwtbauh
    Jul 28, 2019 via Android
    32
    服务器可以 wine 运行 ms-office

    其实这也是 winehq 的说的 wine 的好处之一的变种,“ Wine makes it economical to use thin clients: simply install Wine on a Linux server, and voila, you can access these Windows applications from any X terminal.”

    在服务器上运行 X,然后执行 ms-office 和 office 自动化即可。

    当然,请务必使用正版 ms-office 软件。但可以节省一大笔 windows server 授权费用。

    此外还可以使用 libreoffice 进行自动化,速度会更快,更干净,但可能出现格式上的错乱。
    VDarker
    VDarker
    Jul 28, 2019
    33
    acrobat 这个软件有提供程序调用的接口
    zhihaofans
    zhihaofans
    Jul 28, 2019 via Android
    34
    win10+自带 pdf 打印机?
    Crixs
    Crixs
    Jul 28, 2019
    35
    Small PDF 可以 PPT 转 PDF 啊
    IfEles
    IfEles
    Jul 28, 2019
    36
    aspose 效果不错,比较依赖字库,对格式(字间距)要求高的情况下,稍显不理想,如果需要 pdf 和 office 一模一样的效果,只能走 office 另存为的那套逻辑,其他效果稍微差强人意
    nnnToTnnn
    nnnToTnnn
    Jul 29, 2019
    37
    环境:
    manjaro + kde + libreoffice,

    操作方式:

    打开你的 word 右键 File -> Print ... -> Print to File ...
    nnnToTnnn
    nnnToTnnn
    Jul 29, 2019
    38
    批量的话,就采用 LibreOffice Basic,调用理论上是可行的
    duxiansen
    duxiansen
    Sep 11, 2019
    39
    @nihiue 你好,请问下有哪些好用的 api 吗?直接找了一通没找到
    ttys001
    ttys001
    Nov 12, 2020
    41
    @yytsjq 感谢,好用!
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1757 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 99ms · UTC 04:45 · PVG 12:45 · LAX 20:45 · JFK 23:45
    ♥ Do have faith in what you're doing.