业务系统中的Word文档如何转成pdf

使用 ONLYOFFICE API 构建 Java 转换器,在 Word 和 PDF 之间进行转换 随着文档处理需求的增加,格式转换成为了一个重要的需求点。由于PDF格式具有跨平台、不易被篡改的特性,将Word格式(.docx)转换为PDF格式(.pdf)的需求尤为强烈。ONLYOFFICE作为一个强大的办公套件,提供了这样的转换功能,使得用户可以轻松地在Word和PDF之间进行转换。 阅读详情

在业务系统中Word文档转pdf是常见的需求,Word文档格式用于业务文档的编辑过程,Pdf文档格式用于流转分发的过程,通过zOffice的Open API可以方便的把Word文档转成Pdf,同时可以确保转出的Pdf与用户在浏览器中看到的Word文件完全一致。

一、zOffice简介

zOffice提供云端Office能力,包括Word、Excel、PPT三类办公文档的在线协同编辑,通过专业级的文档能力,高效的协作体验,内容级的安全管控,丰富的集成开发接口,来赋能企业的业务系统,帮助业务系统实现文档在线预览和编辑,文档操作过程全部线上进行,完成在线办公的场景闭环。

官网链接:https://www.filez.com/zoffice

集成介绍文档: https://lenovocloud.zbox.filez.com/l/a0OsO0

二、实现过程

转Pdf API是zOffice提供的服务端Rest API,具体描述如下:

1.接口说明

POST /docs/publicapi/v1/convert

请求体

Content-Type为application/json

参数名

类型

说明

是否必须

fileUrl

string

文件下载地址

是

filename

string

包含后缀的文件名,Word类型支持doc/docx/wps

是

targetFilename

string

包含后缀的目标文件名,PDF后缀为pdf

是

callback

string

回调地址。任务转换结束后zOffice回调通知状态

是

  • callback说明

任务转换结束后,zOffice通过callback回调通知调用方,zOffice回调时回传给三方。

2.返回结果

正常返回:

{
    "taskId": "6f6598c8-c87e-420b-b6c4-6f1b187201dc",
    "code": "Ok",
    "detail": {
        "taskStatus": "IN_QUEUE"
    }
}

错误返回:

{
    "taskId": "695fbf6e-90d2-42ba-83d5-00e81e5e366e",
    "code": "TaskQueueCongestion",
    "detail": {
        "taskStatus": "FAIL"
    }
}

code值是"OK",表示该转换pdf请求被zOffice正确接受,转换正在进行。转pdf结果需要等待回调通知。

3.回调通知

回调通知为三方系统实现,zOffice server在任务结束后通知三方。第三方调用文档转换请求时,需要携带了callback回调参数,zOffice在任务转换结束后会调用请求发送任务状态。

转换成功通知:

{
    "taskId": "1c1cf10b-d9e6-4927-b75e-dddf6b441445",
    "code": "ConvertSuccessNotify",
    "detail": {
        "taskStatus": "SUCCESS",
        "defaultDownloadPath": "/docs/open/v1/convert/download",
        "contentId": "640eeac02a9baf5dbc69d426",
        "filename": "demo-docx.pdf"
    }
}

转换失败通知数据:

msg中会描述任务失败原因

{
    "taskId": "1c1cf10b-d9e6-4927-b75e-dddf6b441445",
    "code": "ConvertFailNotify",
    "detail": {
        "taskStatus": "FAIL",
        "msg": "conversion fotmat err",
        "filename": "demo-docx.pdf"
    }
}

4.结果下载

接口说明:下载转换结果

GET /docs/publicapi/v1/convert/download?taskId=xxx&contentId=xxx

请求参数

参数名

类型

说明

是否必须

taskId

string

任务ID,对应回调响应中taskId

是

contentId

string

结果ID,对应回调响应中detail.contentId

是

返回:文件流

5.认证

如果业务方能成功调用zOffice转pdf API,调用API时需要携带如下请求头

请求头

示例值

描述

zOffice-auth-type

s2s_MD5_sig

固定为s2s_MD5_sig

zOffice-message-nonce

1f178946-397f-41a7-ae9e-fde1f40ad51a

随机值,每次请求时随机生成

timeStamp

1678618777752

请求时间戳,数字,自 UNIX 纪元开始(1970 年 1 月 1 日 00:00:00 (UTC))到当前时间的毫秒数

Authorization

repoId:appId:hash-md5(secret@@timestamp@@message-nonce@@reqBody)

指定算法计算的token

Authorization计算方式

public class Demo {
    public static void main(String[] args) {
        String timestampHeaderValue = System.currentTimeMillis() + "";
        String messageNonceHeaderValue = UUID.randomUUID().toString();

        String body = "请求体对应的json字符串,无请求体可忽略";
        String token = getAuthToken(timestampHeaderValue, messageNonceHeaderValue, body);
        String repoId = "repoId";
        String appId = "appId";
        token = repoId + ":" + appId + ":" + token;
        System.out.println("Authorization Header value is " + token);
    } 

    private static String getAuthToken(String timestamp, String nonce,

, String body

) {
        try {
            MessageDigest md5 = MessageDigest.getInstance("MD5");
            String secret = "secret";
            String seed = secret + "@@" + timestamp +"@@" + nonce;

            if (body !== null && body.length() > 0) {

                seed += "@@" + body;

            }
            md5.update(seed.getBytes(StandardCharsets.UTF_8));
            return new BigInteger(1, md5.digest()).toString(16);
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        }
        return "";
    }
}

其中

  • repoId是与zOffice预定好的应用系统ID。appId值为固定值publicApi。
  • secret是zOffice服务和三方服务约定的密钥。

认证失败会返回状态码401及认证失败信息,例如

401 InvalidAuthTimestamp
401 InvalidAuthHeader

三、总结

使用 zOffice 提供的Word文档转pdf api,可以所见即所得的获得pdf格式文档,帮助业务系统中的文档处理流程完成闭环。

zOffice提供非常丰富的集成能力,您可以在论坛中搜索zOffice获取更多内容。相信利用zOffice,您可以更高效地生成各类业务文档,从而极大的提高您的办公自动化效率。

OnlyOffice实战:5分钟搞定Word转PDF的完整API调用指南(附CURL示例) 本文提供了一份完整的OnlyOffice API调用指南,帮助开发者在5分钟内实现Word转PDF的自动化流程。通过详细的CURL示例和参数解析,涵盖环境准备、API调用、错误排查及安全加固等关键步骤,适合需要高效文档转换的企业和开发者。 阅读详情

相关推荐

java使用POI实现word模板替换导出

代码 package com.party.web.controller.common; import org.apache.poi.xwpf.usermodel.*; import java.io.FileInputStream; import java.io.FileOutputStream; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Set; public

lianzhitiger的博客 4572

Word转PDF功能实现,文档转换工具通过PHP开发

1.可以将Office(Word,Excel,PowerPoint)文件转换为PDF。通过该接口可以将图片、word、excel、ppt等文档转换为pdf格式的文件。最近比较火的文档转换工具相信大家都听说过,但是怎么实现呢?我们为了方便大家开发,处理成开放平台API供大家对接。2.转换文件内容、格式、页数等和原文件一致。

顺为网络的博客 1364

Java业务系统应用技术

5、Java 生成海报 zxing二维码处理 barcode4j-light 条形码处理。11、json 处理 jackson、fastjson、json-lib、gson。2、java pdf 生成 itext pdf 、 html2pdf。HTML电子凭证模版指定位置贴上二维码,并生成为pdf电子凭证文档。word模版文档指定位置贴上二维码,并生成为pdf电子凭证文档。8、redis链接&连接池 lettuce、4、java word文档处理。1、Java 处理email。7、hutool 工具箱。

十年磨一剑,java开发各种业务系统 1556

用 Apache POI 将 Word 文档转换为 PDF,PDF 转图片

使用 Apache POI 将 Word 文档转换为 PDF,并将 PDF 转换为图片,填充word

qq_36501494的博客 1万+

模板驱动型文档自动化:让Word/PDF生成变成填空题

文档自动化是企业提效降错的关键技术路径,其核心在于通过结构化模板替代人工排版,实现内容与样式的解耦。原理上依赖静态字段替换、条件逻辑分支和循环数据渲染三层能力,确保输出结果兼具合规性、一致性与动态适应性。技术价值体现在将重复性文档生产效率提升3倍以上,错误率趋近于零,显著降低法务审核、销售交付与HR运营中的版本混乱风险。典型应用场景包括SaaS报价单、法律合同、员工入职包、客户提案等强结构、高复用、严合规的业务文档。本文聚焦模板驱动型文档自动化,深入解析Sqribble在字段契约化、CSS工程化、PDF/A

weixin_30873847的博客 396

模板驱动型文档自动化:让Word变成业务系统前端

文档自动化是企业知识交付的核心能力,其本质是将非结构化内容与结构化数据通过可复用逻辑进行智能组装。传统方案依赖代码或AI生成,但难以兼顾业务可理解性、格式精确性和协作可持续性。模板驱动型文档自动化以Word等原生办公文档为载体,通过占位符语法、条件渲染、动态表格和多源数据映射,实现‘一次建模、多端生成、自动校验’。它既保障PDF/HTML的出版级格式一致性,又赋予业务人员自主迭代模板的能力,特别适用于SaaS客户成功、律所合同管理、高校教务报告等强规范、高复用场景。Sqribble正是这一范式的典型实践。

weixin_29720641的博客 243

如何把 PDF、Word、PPT 一键转成 Markdown?MarkItDown 文档转换与 LLM 预处理快速指南

MarkItDown 是微软开源的文档转换利器,能把 PDF、Word、PPT、Excel 等办公文件轻松转成 Markdown,完整保留标题、表格、列表等结构,是大模型(LLM)数据预处理的神器。只需一行安装命令,3 分钟即可掌握全部核心用法。 ## 📄 痛点直击:格式五花八门的文档,大模型根本“读不懂” 你大概率有过这样的场景:手里堆着一摞 PDF 报告、Word 方案、PPT 汇报和

gitblog_00166的博客 1055

模板驱动型文档自动化:让PDF/Word生成像填空一样简单

文档自动化是企业提升内容生产效率与合规性的关键技术路径,其核心在于将重复性高、规则明确的文档制作过程结构化、可复用化。不同于依赖大模型自由生成的AI写作,模板驱动型文档自动化以预设结构骨架、动态内容填充和样式继承为原理,确保每一次输出都100%符合品牌规范与法律要求。它具备多格式输出、条件逻辑嵌入、数据源灵活对接等技术价值,广泛应用于销售方案、合同协议、产品说明书、医疗报告等标准化文档场景。本文聚焦模板驱动、文档自动化两大热词,详解如何零代码构建稳定、安全、可维护的文档流水线。

weixin_30430169的博客 397

支持PDF/Word多格式文档智能审核工具

在数字化转型浪潮席卷各行业的当下,企业对文档处理的效率与精准度需求愈发迫切。尤其是PDF、Word等多格式文档作为业务流转的核心载体,其审核环节长期受困于人工依赖、格式兼容难、数据提取不准等痛点。“人工智能+”写入2024年政府工作报告,明确要求AI与产业深度融合,更推动智能审核工具成为企业降本增效、合规风控的关键抓手。在此背景下,合合信息TextIn DocFlow这款支持PDF/Word多格式的智能审核工具应运而生,为金融、财务、供应链等领域提供全流程数字化解决方案。

b_qixin的博客 885

模板驱动型文档自动化:让Word和PDF变成智能文档工厂

文档自动化是企业提升内容生产效率的关键技术路径,其核心在于将重复性文档工作从人工操作升级为可配置、可复用、可审计的标准化流程。它基于模板定义结构与样式,通过数据绑定实现动态内容填充,并依托条件逻辑、循环渲染和计算表达式支撑复杂业务规则。相比代码驱动方案,模板驱动更强调业务人员自主可控,大幅降低维护门槛与响应延迟;在金融、医疗、SaaS等强合规、多版本、高并发场景中,具备版本快照、元数据注入、输出精度控制等工程级能力。本文深入解析Sqribble所代表的模板驱动型文档自动化实践体系。

weixin_30764883的博客 400

C#实现PDF转Word文档完整解决方案(含源码与库集成)

htmltable {th, td {th {pre {简介:在C#开发环境中,使用Aspose.Words等强大库可高效实现PDF文件向Word(DOC/DOCX)格式的转换。本文详细介绍了基于Aspose.Words的PDF转Word技术流程,包括库的安装、核心代码实现及注意事项,并对比了iTextSharp、PDFSharp等替代方案的优劣。项目适用于文档自动化处理场景,经过测试验证,支持批量转换与格式保留,助力开发者快速集成文档转换功能。

weixin_42593701的博客 1036

MaxKB文件解析:PDF/Word/Excel全支持

在企业智能化转型过程中,文档处理一直是最大的痛点之一。你是否也遇到过这些问题? - **格式兼容性差**:PDF、Word、Excel等不同格式文档难以统一处理 - **内容提取困难**:文档中的表格、图片、复杂排版信息难以准确提取 - **知识碎片化**:海量文档无法有效组织成结构化的知识体系 MaxKB作为企业级智能体平台,提供了完整的文档解析解决方案,支持PDF、Word、Excel等多...

gitblog_00662的博客 1492

通达信抓波段指标(主图)

VAR3:=IF(INBLOCK('科创板'),VART20,IF(INBLOCK('创业板') AND DATE>1200823,VART20,IF(INBLOCK('ST板块'),VART5,VART10)));VAR5:=IF(INBLOCK('科创板'),CT20,IF(INBLOCK('创业板') AND DATE>1200823,CT20,IF(INBLOCK('ST板块'),CT5,CT10)));曾涨停/紫色细K线:青字"炸",涨停未封住。曾跌停/蓝色细K线:红字"撬",跌停被打开。

q125500612的博客 2136

PDF文档能否通过KindEditor导入到网页中编辑?

要求:开源,免费,技术支持编辑器:KindEditor前端:vue2,vue3,react,vue-cli,html5,后端:java,jsp,springboot,asp.net,php,asp,.net core,.net mvc,.net form功能:导入Word,导入Excel,导入PPT(PowerPoint),导入PDF,复制粘贴word,导入微信公众号内容,web截屏。

alisky119的博客 984

STM32F103C8T6通过ESP8266连接阿里云物联网平台(附代码)

STM32F103C8T6连接阿里云物联网平台(1)—阿里云lot Studio控制 Web开发 分享一下自己使用stm32f103c8t6通过ESP_01模块连接阿里云物联网平台,实现温湿度上传和控制命令下达的过程,能力有限,用的是最简单的方法,如有错误,多多担待。 一、硬件选型 1、 stm32f103c8t6 2、ESP_01 wifi模块 3、其他 二、硬件连接 WSP_01 STM32F103C8T6 RXD PA2 TXD PA3 RES PA4 VCC 3.3

weixin_A13253323604 3万+

Ubuntu20.04安装NVIDIA显卡驱动避坑指南:从.run文件到完美运行

本文详细介绍了在Ubuntu20.04系统上通过.run文件安装NVIDIA显卡驱动的完整流程和避坑技巧。从禁用Nouveau驱动、选择合适显示管理器到处理常见安装问题,提供了一套经过验证的解决方案,帮助用户顺利完成驱动安装并优化性能。

weixin_30776273的博客 604

PDF文档导入KindEditor的解决方案有哪些?

要求:开源,免费,技术支持编辑器:KindEditor前端:vue2,vue3,react,vue-cli,html5,后端:java,jsp,springboot,asp.net,php,asp,.net core,.net mvc,.net form功能:导入Word,导入Excel,导入PPT(PowerPoint),导入PDF,复制粘贴word,导入微信公众号内容,web截屏。

2501_90699780的博客 1042

基于AIS动态数据与AI结合得经纬度标示算法

港口船舶智能标注系统 本系统通过结合摄像头视频流和AIS船舶动态数据,利用AI技术实现船舶实时标注功能。系统架构包括视频流处理、AIS数据解析、船舶检测匹配和坐标映射转换等模块。关键技术步骤: AIS数据获取:通过本地接收机或网络API获取船舶位置、航速等信息 AI目标检测:采用YOLOv8等模型识别视频中的船舶 船舶匹配算法:通过位置投影或运动轨迹匹配视频目标与AIS数据 坐标映射:使用相机标定技术将经纬度转换为图像坐标 实时标注:在视频画面上叠加船名、位置等关键信息 应用场景包括港口监控、智能海事管理和

qianbo042311的博客 1809

PDF文档如何快速导入KindEditor编辑器中?

要求:开源,免费,技术支持编辑器:KindEditor前端:vue2,vue3,react,vue-cli,html5,后端:java,jsp,springboot,asp.net,php,asp,.net core,.net mvc,.net form功能:导入Word,导入Excel,导入PPT(PowerPoint),导入PDF,复制粘贴word,导入微信公众号内容,web截屏。

weixin_52041354的博客 1108

人类肠道微生物群落代谢建模

MICOMWeb 是款用户友好型网站,专为人类肠道微生物群落代谢建模设计。该网站旨在解决基因组尺度代谢模型(in silico)构建过程中的3大限制:① 使用 MICOM Python 包进行通量平衡分析时对用户 Python 编程知识的要求;② 支持预定义和用户自定义饮食,以生成专属代谢模型;③ 处理宏基因组鸟枪法测序或 16S 扩增子测序获得的真实丰度数据时,所需的高通量计算基础设施。本文展示了 MICOMWeb 的核心功能,用户可轻松开展虚拟实验,为3个已发表数据集的实验验证生成功能性假设。

多组・学・多组学 1169

TRON 主网节点搭建-2024最新详细版文档

TRON主网节点搭建以前,大概说明一下本次使用的服务器配置,本次从搭建部署到节点完成同步的时间大约为36小时。

J_Lee 4057

判断PDF文件与word文件中是否有章

public static void main(String[] args) throws Exception { // String path = "C:\\Users\\86185\\Desktop\\(2018)粤财保7号.pdf"; // String path = "C:\\Users\\86185\\Desktop\\(2019)粤民初1号.pdf"; // String path = "C:\\Users\\86185\\Desktop\\旧业务系统\\.

weixin_40408702的博客 1308

华为OD机试真题 新系统2026-04-01 C语言 实现【勇攀数字高峰】

请你在给定的数字地形图中寻找登山路径,数字代表当前位置的海拔高度,要求从最低海拔出发,不断攀登,最终到达最高山峰。你需要寻找所有满足条件的登山路径。地图已经保证最低海拔和最高山峰都只有一个。

MISAYAONE的博客 292

Word转PDF用什么软件?2026年Word转PDF高质量转换方案对比

方案准确度速度LinuxWindows成本适合场景★★★★★★★★✅✅免费通用服务Gotenberg★★★★★★★★✅✅免费服务化转换★★★★★★★★★✅✅商业企业项目★★★★★★★★❌✅商业高保真WPS + COM★★★★★★★★❌✅商业Windows 企业环境Acrobat★★★★★★★★视方案✅商业PDF 专业处理云 API★★★★~★★★★★★★★★✅✅按量快速接入Apache POI★★。

代码简单说 Vue、JAVA、PHP、Node.js 熟练运用,接口、架构、性能全搞定。 394

(汇总篇)语义SLAM相关开源方案| 全球优秀作者与实验室 | SLAM学习资料整理

SLAM 与深度学习相结合的工作当前主要体现在两个方面,一方面是将语义信息参与到建图、位姿估计等环节中,另一方面是端到端地完成 SLAM。针对建图的工作一方面是利用几何信息进行稠密重建,另一方面很多工作利用语义信息达到了很好的语义重建效果,三维重建、SFM。动态 SLAM 也是一个很值得研究的话题,这里不太好分类,很多工作用到了语义信息或者用来三维重建,收集的方案相对较少。优化可能是 SLAM 中最难的一部分了吧 +_+ ,一般都是直接用现成的因子图、图优化方案,要创新可不容易。

熊猫小妖的AI世界 7870

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Word文档上传至KindEditor后格式错乱怎么办?

要求:开源,免费,技术支持编辑器:KindEditor前端:vue2,vue3,react,vue-cli,html5,后端:java,jsp,springboot,asp.net,php,asp,.net core,.net mvc,.net form功能:导入Word,导入Excel,导入PPT(PowerPoint),导入PDF,复制粘贴word,导入微信公众号内容,web截屏。

2501_90699800的博客 900

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: 通过zOffice SDK实现灵活的数据统计
下一篇: 如何对多个文档进行合并
联想Filez协同办公
博客等级 码龄5年 6粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值