网站首页 > java教程 正文
前言
在日常企业级应用开发过程中,文档预览、文档相互转换是非常常见的需求,平时我们都是使用纯java的一些工具进行处理,比如:docx4j、Apache POI + iText等,无论使用哪种方案,简单的一点问题没有,但是遇到比较复杂的格式,如:表格、字体等样式,效果都不是很理想,不是字体缺失,就是样式错乱,而且解决起来非常麻烦(有可能还解决不了)。
其实,无论选择哪种方案,都需要有个取舍,使用上面的工具,简单、轻量;但是想要效果好,最好的方式还是要有独立的office server,如:LibreOffice、OnlyOffice,因为它们是一套完整的office文档解决方案,并且对外提供API调用。

本文将描述使用onlyoffice将word转换为pdf。
注:使用onlyoffice的前提,需要安装部署onlyoffice,在使用本教程时,确保已部署onlyoffice。
WORD 转 PDF
接口: http://documentServer/ConvertService.ashx
请求方式: POST
Header 参数:
Accept: application/json; // 如果不设置为application/json; 响应的是xml格式
Content-type: application/json;
参数:
{
"sync" :false, // 是否异步,主要影响转换进度的返回,false时,转换进度直接时100
"filetype": "docx", // 文档类型
"key" : "ab2058df4bbc4d2f211abe12646ac883", // 文档的唯一编码,可以是文档的md5,也可以是一个唯一随机串
"outputtype": "pdf", // 输出文件类型
"title": "test.docx", // 标题,转换完之后,下载的文件名
"url" : "文档下载地址" // 文档下载地址,需要访问白名单,供onlyoffice :documentServer 进行访问下载
}
请求示例:
{
"sync" :false,
"filetype": "docx",
"key" : "ab2058df4bbc4d2f211abe12646ac883",
"outputtype": "pdf",
"title": "test.docx",
"url" : "http://192.19.0.107:9104/api/cgi-bin/oss-service/v1/ali-oss/download/1654f65941404973a280f074b63b8e4b.docx"
}
响应结果:
{
"fileUrl": "http://documentServer/cache/files/data/conv_ab2058df4bbc4d2f211abe12646ac883_513/output.pdf/test.pdf?md5=6gLrsbSrQb3GjKlx652lgA&expires=1742460434&shardkey=1742284077136&filename=test.pdf", // pdf下载地址
"fileType": "pdf", // 文件类型
"percent": 100, // 进度
"endConvert": true // 是否转换结束
}
将fileUrl在浏览器中访问,即可完成pdf下载,也可以通过前端进行控制跳转下载。
附:onlyoffice 支持的转换表:https://api.onlyoffice.com/docs/docs-api/additional-api/conversion-api/conversion-tables/
猜你喜欢
- 2025-11-10 笔记本xp系统升级win7(笔记本xp系统怎么升级)
- 2025-11-10 双系统启动修复工具(双系统修复启动引导)
- 2025-11-10 快捷键截图是ctrl加几(截图的快捷键有)
- 2025-11-10 怎样删除文件夹里的文件(怎样删除文件夹里的文件和图片)
- 2025-11-10 win7系统优点(win7的优点)
- 2025-11-10 win10易升在99%不动了(win10易升99如何补救)
- 2025-11-10 台湾繁体注音输入法(台湾繁体注音输入法电脑版下载)
- 2025-11-10 宽带密码怎么改(家里的宽带密码怎么改)
- 2025-11-10 最新电视剧(最新电视剧大全)
- 2025-11-10 水星路由器手机app(水星路由器手机设置方法详细步骤)
欢迎 你 发表评论:
- 11-10笔记本xp系统升级win7(笔记本xp系统怎么升级)
- 11-10双系统启动修复工具(双系统修复启动引导)
- 11-10快捷键截图是ctrl加几(截图的快捷键有)
- 11-10怎样删除文件夹里的文件(怎样删除文件夹里的文件和图片)
- 11-10win7系统优点(win7的优点)
- 11-10win10易升在99%不动了(win10易升99如何补救)
- 11-10台湾繁体注音输入法(台湾繁体注音输入法电脑版下载)
- 11-10宽带密码怎么改(家里的宽带密码怎么改)
- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)

本文暂时没有评论,来添加一个吧(●'◡'●)