Linux环境php实现word转pdf

1、centos下安装libreoffice

yum install libreoffice

2、命令行执行word转pdf, 将 /path/word/test.docx转成pdf存放到 /path/pdf/ 目录下:

libreoffice –headless –convert-to pdf:writer_pdf_Export /path/word/test.docx –outdir /path/pdf/

3、在php中执行的代码

<?php
$docfile = '/path/word/test.docx'; // word文件
$pdfdir = '/path/pdf/'; // pdf文件
$cmd = "export HOME=/tmp && libreoffice --headless -convert-to pdf {$docfile} -outdir {$pdfdir}";
$res = system($cmd); // exec($cmd);

报错安装 ,可能需要安装 libreoffice-headless
yum install libreoffice-headless

查看系统字体目录 cat /etc/fonts/fonts.conf, 位置 /usr/share/fonts/ ,
在/usr/share/fonts/下新建文件夹 win 并设置权限,将 windows下(C:\Windows\Fonts)的fonts下字体(中文字体)全部拷贝到其中。然后,

cd /usr/share/fonts/win
sudo mkfontscale
sudo mkfontdir //这两条命令是生成字体的索引信息
sudo fc-cache -fv //更新字体缓存

方法二: openoffice
http://www.openoffice.org/download/index.html