借助 libreoffice,word 转 pdf 体验
libreoffice 官网
https://zh-cn.libreoffice.org/
软件下载镜像:
https://mirrors.cloud.tencent.com/libreoffice/libreoffice/stable/
软件安装略过,custom 方式,指定目录。
1、使用 jodconverter.jar,新建 maven 项目,添加 pom 依赖,写 java 代码把 docx 转 pdf
pom:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>constxiong</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version></parent><artifactId>jodconverter</artifactId><dependencies><dependency><groupId>org.jodconverter</groupId><artifactId>jodconverter-local</artifactId><version>4.2.2</version></dependency></dependencies><build></build>
</project>
java 代码:
package constxiong;import org.jodconverter.OfficeDocumentConverter;
import org.jodconverter.office.LocalOfficeManager;
import org.jodconverter.office.OfficeException;import java.io.File;/*** 测试 jodconverter* @author constxiong*/
public class Test {public static void main(String[] args) throws OfficeException {LocalOfficeManager officeManager = LocalOfficeManager.builder().officeHome("E:\install\LibreOffice").install().build();//启动OpenOffice服务officeManager.start();//执行转换OfficeDocumentConverter converter = new OfficeDocumentConverter(officeManager);converter.convert(new File("E:/ppdf/test.docx"), new File("E:/ppdf/test-jar.pdf"));//停止服务officeManager.stop();}}
2、借助命令行 soffice 转换 docx 到 pdf
soffice --headless --convert-to pdf 源文件 --outdir 导出目录 "-env:UserInstallation=file:///用户工作临时目录"soffice --headless --convert-to pdf E:/ppdf/test.docx --outdir E:/ppdf/ "-env:UserInstallation=file:///E:/ppdf/temp/"
ps:
- openoffice 类似 https://www.openoffice.org/
- soffice 指令在 libreoffice 的安装目录/program/ 目录下,详细指令查看 soffice --help
- 发现 libreoffice 的兼容性没有原生 office 组件好,格式细微错误 office 能显示,libreoffice 不行
【Java学习资源】整理推荐
- Java 8 Stream API Demo
- Druid 使用
- 借助 libreoffice,word 转 pdf 体验
- Java 动态代理
- openjdk jol 工具打印 Java 对象内存布局
- Spring整合MyBatis
- MyBatis 自定义插件
- MyBatis 延迟加载
- MyBatis 1对1 1对多 关联查询
- MyBatis insert 获取自增主键
- MyBatis 批量插入
- 分页插件 Mybatis-PageHelper
- MyBatis 原生使用
- Sharding-JDBC 实现分库分表
- JDK1.8 中的日期与时间 API
- Sharding-JDBC 实现读写分离
【Java面试题与答案】整理推荐
- 基础与语法
- 集合
- 网络编程
- 并发编程
- Web
- 安全
- 设计模式
- 框架
- 算法与数据结构
- 异常
- 文件解析与生成
- Linux
- MySQL
- Oracle
- Redis
- Dubbo
借助 libreoffice,word 转 pdf 体验相关推荐
- 记录一下LibreOffice word生成pdf由于特殊字符报错的问题
业务大致是,输入表单然后生成word和pdf word没有问题,pdf由于有特殊字符&所以导致生成失败. word本身就是xml所以报错的根本原因是xml不能直接使用 &.<.& ...
- 替换Word模板占位符并用 libreOffice Word 转Pdf
libreOffice 官网 https://zh-cn.libreoffice.org/ 参考原文:https://blog.csdn.net/xujingcheng123/article/deta ...
- python word转pdf linux_Linux下使用LibreOffice+python将doc/docx/wps格式的文档转成html/txt/docx等格式...
Linux下的word文档格式转换工具 最近接到一个需求,要将所有不同格式的文档(包括.doc/.docx/.wps)转成统一格式,如都转为.docx,或直接转为.html 或.txt.经调研后,发现 ...
- Java word转pdf Linux/windows跨平台 格式完美(利用命令行调用libreoffice)
参考了里面的libreoffice的用法:https://blog.csdn.net/qwert678000/article/details/72770109 需求描述 最近在做word报表的自动生成 ...
- freemarker生成word文档,通过libreoffice完美转为pdf文件排版不乱(包含调用浏览器打印pdf)
了解libreoffice的朋友都知道,freemarker是用xml生成的word文档,libreoffice打开这些文档会不兼容,会直接显示xml代码或排版差别很大,尤其是文档中包含一些复杂表格的 ...
- LInux下安装libreoffice(用于Linux下Word转pdf,附代码)
1. LibreOffice LibreOffice 是一款免费的开源办公软件,类似于 Microsoft Office 和 Google Docs.它包括多个应用程序,例如: Writer:用于处理 ...
- php 编辑PDF文件,php word 转 PDF,php 编辑 word,phpoffice,phpword,libreoffice
php 编辑PDF 废话不多说,直接说需求 1.项目经理:"小江啊,我这里有份合同,是word格式的,你把它生成PDF格式,并且里面的内容还能编辑". 大致思路 1.遇到这种需求, ...
- PHP使用LibreOffice实现word转pdf
PHP使用LibreOffice实现word转pdf 一.windows下的安装及使用 1. 下载并安装<LibreOffice 便携版> 2. 通过cmd命令实现文档转换 3.php调用 ...
- libreoffice + jodconverter + Springboot 整合使用将Word转PDF
libreoffice + jodconverter + Springboot 整合使用将Word转PDF 第一步 安装Libreoffice https://jingyan.baidu.com/ar ...
最新文章
- 解决ExcelReport导出Excel报Number of rules must not exceed 3错误的问题
- Java 获取文件路径
- 重构,改善既有代码的设计--第八章感悟
- react-native拨打电话和安卓端拨打电话
- mysql自主增长键_mysql中关于自增长主键的获取
- [hdu2222]Keywords Search(AC自动机)
- [Python] pdb 调试
- 关于Swift中的forEach(_:)和for-in loop
- CreateProcess()无法启动应用?
- 为免费吃饭 黑客入侵餐馆管理系统改数据
- C语言中的除法运算符
- 通过微软官方工具卸载office
- 进击的Objective-C -------------------NSSting,NSSMutableString和NSArray,NSMutableArray
- 《软件测试》第九章 兼容性测试
- 通讯录总结-JAVA GUI- “婉君被通讯录吓晕”-第一版
- 掌握Haproxy原理并搭建
- java画星星_用Java 做一个星星图案
- 2021-10-15
- 出现这十种症状,说明你不适合做程序员
- 兼容edge、谷歌和火狐浏览器的滚动条样式纯css实现
热门文章
- 接触电阻导通电阻四线毫欧电阻信号隔离转换器0-500mΩ 0-100mΩ转4-20ma
- 一招教你解决老旧设备联网成本高的问题
- python爬取微博评论(无重复数据)
- python launcher卸载不了,Python Launcher 可以卸载吗
- Mybatis的增删改查(查询)完整代码
- Autodesk CAD帮助文档总结四 DXF HEADER
- linux 下录音alsa介绍
- 销巴生活全返平台模式需注意的6大原则性问题
- 【githubgirl】功能强大的绘画 App:tldraw,自带画笔、橡皮、线框、文字等工具,用户可自定义画笔颜色
- 《像外行一样思考,像专家一样实践》说了些什么...