注: 本教程仅供个人学习使用,请勿商用。
此方案仅供参考,也有一定的局限性(需要一台winserver服务器)。
一、问题背景:
1、大多数文件处理的业务都会有转换PDF的需求,开源方案虽多,但或多或少有一些问题;
2、在项目环境中,onlyOffice往往是单机部署的,自带的convert服务可能会存在着阻塞的情况,这大大降低了业务性能;
3、另外,onlyOffice转换后的PDF文件有时候会出现一些格式方面的问题。
二、解决转换PDF文档:
采用OfficeToPDF.exe,这是微软自家提供的方式,对微软的格式支持的很好
1、从github上克隆项目,目前版本号为1.9.0.2
运行命令:git clone https://github.com/cognidox/OfficeToPDF.git
2、VS2019安装好C#相关环境
3、使用VS2019打开该项目,注意要打开sln文件(解决方案),而不是文件夹
4、找到Program.cs文件,如图将wps|et|dps加入进去,使其支持WPS(源代码是没有的)
5、编译项目即可,得到以下三个文件:
OfficeToPDF.exe OfficeToPDF.exe.config OfficeToPDF.pdb
6、将以上编译得到的三个文件一并放入到winserver服务器的同一目录下
7、使用业务代码调用该exe文件即可,需要执行的转换命令为“OfficeToPDF.exe '你的文件名称'”(注:若失败,将文件名称加上双引号试试)