首页 > 其他分享 >其他word转化为PDF的方式

其他word转化为PDF的方式

时间:2023-12-11 10:32:30浏览次数:25  
标签:word Word 转化 OpenOffice 文档 LibreOffice Apache PDF


将 Word 文档转换为 PDF 格式,除了使用 COM 自动化外,还有其他一些方法可以在 Java 中实现。这些方法通常更加可靠和跨平台。以下是一些常用的方法:

1. 使用 Apache POI 和 Apache PDFBox

这种方法涉及使用 Apache POI 库读取 Word 文档,然后使用 Apache PDFBox 库将内容写入 PDF。这适用于较简单的文档,因为将 Word 的复杂格式完全准确地转换成 PDF 可能比较困难。

  • 优点:完全基于 Java,跨平台。
  • 缺点:可能无法完美处理复杂格式的 Word 文档。

2. 使用 LibreOffice 或 OpenOffice 的命令行工具

LibreOffice 和 OpenOffice 都提供了命令行工具,可以将 Word 文档转换为 PDF。你可以在 Java 中使用 Runtime.getRuntime().exec()ProcessBuilder 来调用这些命令行工具。

soffice --headless --convert-to pdf:writer_pdf_Export input.docx --outdir /path/to/output
  • 优点:能较好地处理复杂格式,跨平台。
  • 缺点:需要在运行环境中安装 LibreOffice 或 OpenOffice。

3. 使用专业的转换服务或库

有一些专业的第三方库和服务,如 Aspose 或 Syncfusion,它们提供了 Word 到 PDF 转换的功能。这些通常是商业产品,但提供了较高的兼容性和准确性。

  • 优点:高兼容性,可处理复杂格式。
  • 缺点:商业产品,需要付费。

选择合适的方法

选择哪种方法取决于你的具体需求,特别是 Word 文档的复杂程度和运行环境。如果文档结构简单,Apache POI 和 PDFBox 可能就足够了。对于复杂文档,或者在没有 Microsoft Office 的环境中,使用 LibreOffice/OpenOffice 或商业库可能是更好的选择。


标签:word,Word,转化,OpenOffice,文档,LibreOffice,Apache,PDF
From: https://blog.51cto.com/u_13171517/8768504

相关文章

  • 使用 com.jacob.activeX 库实现 Word 到 PDF
    使用com.jacob.activeX库实现Word到PDF的转换涉及到使用Java和MicrosoftOffice的COM自动化。JACOB(JavaCOMBridge)库提供了一个桥接器,允许Java代码通过COM(组件对象模型)与Windows应用程序(如MicrosoftOffice)进行交互。以下是一个示例代码,展示如何使用JACOB库在......
  • "firmwarepasswd": MacOS Firmware Password Management: CHECK and DELETE Macbook P
    Abaels-MacBook-Pro:~abaelhe$suPassword:bash-3.2#firmwarepasswd-checkPasswordEnabled:Yesbash-3.2#firmwarepasswd-deleteDeleteFirmwarePasswordEnterpassword:PasswordremovedNOTE:MustrestartbeforechangeswilltakeeffectUsage:firmw......
  • uva10391 复合词 Compound Words
    原题链接 复合词CompoundWords-洛谷|计算机科学教育新生态(luogu.com.cn)这道题我的第一想法是二重循环遍历所有组合,但结合120000的数据量知晓此方法肯定超时。那么解法二:先用map存储所有的单词,再遍历所有的单词(假如为S),对S进行分解得到Sa和Sb,然后判断Sa和Sb在不在map中(......
  • word表格美化设计
    一、美化表格 文字内容如上;添加标题栏,增加阅读感选中表格上栏,然后插入一行,并合并单元格,写上文字:调整整个表格大小,使其延伸到整个word版面选中整个表格:右键--自动调整---根据窗格自动调整内容;使左右占满整个版面视图---单页--然后鼠标下拉表格进行调节表格......
  • wordpress整合 Prism.js实现代码高亮 切图网自用
    Prism.js是一个简约漂亮的代码高亮插件,就冲简单好用就值得一用,如何把它整合到wordpress,附代码,也是切图网自己再用的。代码添加到主题的functions.php中//自定义代码高亮按钮functionappthemes_add_quicktags(){if(wp_script_is('quicktags')){?><s......
  • 上海交通大学生存手册PDF
    强烈推荐所有大学生去阅读《上海交通大学生存手册》。虽然它可能有些冗长,但非常重要,因为它道出了大学教育的本质。如果几年前我能够看到这本书,也许我的大学生活会有所不同。现在我将向正在上大学或者将要上大学的你推荐这本书。无论你是985、211、普通本科生还是专科生,都请耐心......
  • Java 中日期String类型与Date类型相互转化
    JavaString类型转换成Date日期类型插入数据库时,存入当前日期,需要格式转换importjava.text.SimpleDateFormat;formatter=newSimpleDateFormat("yyyy-MM-dd");Stringdate=formatter.format(newDate());//格式化数据,取当前时间结果为2014-10-30String格式的数据转化成......
  • sensitive word 敏感词(脏词) 如何忽略无意义的字符?达到更好的过滤效果?
    忽略字符说明我们的敏感词一般都是比较连续的,比如傻帽那就有大聪明发现,可以在中间加一些字符,比如【傻!@#$帽】跳过检测,但是骂人等攻击力不减。那么,如何应对这些类似的场景呢?我们可以指定特殊字符的跳过集合,忽略掉这些无意义的字符即可。v0.11.0开始支持例子其中charIgn......
  • sensitive word 敏感词(脏词) 如何忽略无意义的字符?达到更好的过滤效果?
    忽略字符说明我们的敏感词一般都是比较连续的,比如傻帽那就有大聪明发现,可以在中间加一些字符,比如【傻!@#$帽】跳过检测,但是骂人等攻击力不减。那么,如何应对这些类似的场景呢?我们可以指定特殊字符的跳过集合,忽略掉这些无意义的字符即可。v0.11.0开始支持例子其中charIg......
  • 【专题】2023年中国碳金融创新发展白皮书报告PDF合集分享(附原数据表)
    原文链接:https://tecdat.cn/?p=34502原文出处:拓端数据部落公众号本白皮书报告合集是全市场聚焦中国碳金融领域的洞察白皮书。白皮书报告合集中巧妙结合了中国特色与国际经验、理论研究与前沿实践、监管导向与市场声音,全面探讨了在中国碳市场蓬勃发展的时代脉络中,金融力量的角色......