Linux平台中使用PHP把word转pdf的实现方法

2018-09-07 13:49

阅读:346

  Linux平台中使用PHP把word转pdf的实现方法

  1、ubantu下安装libreoffice

  sudo apt-get install libreoffice

  2、命令行执行word转pdf

  将 /home/wordToPdf/wordFiles/目录下的CAS.docx转成pdf存放到 /home/wordToPdf/pdfFiles 目录下:

  libreoffice --headless --convert-to pdf:writer_pdf_Export /home/wordToPdf/wordFiles/CAS.docx --outdir /home/wordToPdf/pdfFiles

/usr/share/fonts 下放中文字体
fc-cache-fv 更新字体缓存

  在php中执行的代码

  $a=./doc/2.doc;
$b=./pdf;
//$str =libreoffice --headless --convert-to pdf:writer_pdf_Export ./doc/2.doc --outdir ./pdf;
//$str =ls ../;
$str = export HOME=/tmp && libreoffice --headless -convert-to pdf /var/
var_dump(system($str));

  在linux中使用php将word文档转为pdf

  使用本教程需要在linux中安装openoffice,改页面中有详细的安装与使用教程
(linux平台的office文档转pdf的实例(程序员的菜))。

  既然,你看了该教程就应该不能否认linux的权限的确很坑人。而用php将word文档转pdf文档,更是需要一大堆权限设置。因此,在这里我就给php用到有关目录和文件都给予了777权限。

  从该文中(linux平台的office文档转pdf的实例(程序员的菜))可以很清楚的知道重点代码:(如下)

  java -jar /usr/local/wenku/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/1.doc /tmp/1.pdf

  从以上代码中可知,php要用到java命令的执行权限,需要/tmp的读写权限。

  查看java命令的位置:which java

  假设java命令的位置为:/bin/java

  要给java设置777的权限:chmod 777 /bin/java

  给/tmp文件夹及以下的文件设置权限: chmod -R 777 /tmp

  设置好权限后。即可使用php的exec函数运行该段代码:java -jar /usr/local/wenku/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/1.doc /tmp/1.pdf

  以上这篇Linux平台中使用PHP把word转pdf的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。


评论


亲,登录后才可以留言!