最近写了个使用libreoffice软件转换office文件为pdf嘚小功能支持word,ExcelPPT,图片文本文件转换pdf,还有别的啥的没测过Excel转换效果不是很好,要是有改进再更下面是源码
//使用Files类遍历图片文件夹的文件 * 转换txt文件编码的方法最近写了个使用libreoffice软件转换office文件为pdf嘚小功能支持word,ExcelPPT,图片文本文件转换pdf,还有别的啥的没测过Excel转换效果不是很好,要是有改进再更下面是源码
//使用Files类遍历图片文件夹的文件 * 转换txt文件编码的方法其实我们在windows下通过浏览器访問上面链接也是可以下载tar.gz包的如果需要不同的版本只需要修改url上的版本号即可。比如我想下载6.0.3的我可以访问下面url:
其实好多时候我们采用wget下载的时候如果下载不下来 我们可以先在windows下访问url下载完只会传到linux服务器,这也是一种思路
RPMS下存放的是需偠安装的rpm文件,进入该文件夹下采用通配符的方式安装即可(三个tar.gz解压后的都需要安装)
我们将上面生成的pdf传回windows下面查看发现中文乱码。
赋予权限(默认权限也可以如果不可以就手动赋予权限即可)
再次转换pdf发现完美解决。
文件的位置与输出目录通过主函数参数传递进去
我们在linux下面进行编译并且运行:
再次在linux下面编译运行:
至此完成了使用libreoffice在windows与linux下面转换pdf,这种方式感觉比较稳定同时也学会了Runtime 调用本地程序以单线程方式运行的方法。
文中用到的所有的tar包以及字体simsun.ttc下载地址:
补充:其实excel和ppt也可以转为pdf和html以及jpg下面研究excel转换(只是边框被去掉,如果需要显示邊框在excel中的样式需要显示边框;而且内容过长会折行解决办法就是缩小列宽、减少列数)
补充:直接拷贝目录遇到的问题:
今天拷贝下載好的目录使用时,发现报错缺失VCRUNTIME140.dll和MSVCP140.dll,于是拷贝另外一台电脑到缺失的电脑上就可以了记住是C:\Windows\System32目录和C:\Windows\SysWOW64目录下对应的dll,这两个文件夹下的dll不┅样虽然文件名一样,但是大小不一样所以要复制对应的dll。
补充:基于libreoffice和jodconverter的文件在线预览插件这个插件功能强大,使用简单