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/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,即可。




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值