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/www/html/doc/2.doc -outdir /var/www/html/pdf";
var_dump(system($str));
=======================
先安装libreoffice,然后使用命令
soffice --headless --invisible --convert-to pdf /tmp/abc.docx --outdir /tmp/
转换成PDF,几乎所有人都遇到
root@panda-dev:~/bin $ soffice --headless --convert-to txt:text blah.doc /usr/lib64/libreoffice/program/soffice.bin X11 error: Can't open display: Set DISPLAY environment variable, use -display option or check permissions of your X-Server (See "man X" resp. "man xhost" for details)
类似的问题,网上的帮助都是说要求启用:
/usr/bin/soffice --headless --accept="socket,host=127.0.0.1,port=8100;urp;" --nofirststartwizard &
然后 export DISPLAY=:0.0,就可以解决问题,但试了N次也完全不行。
其实只需要 yum install libreoffice-headless,即可。