PHP将word文件转为pdf的方法:首先修改【php.ini】,并重启环境;然后安装微软office套件;最后配置office组件服务即可。
PHP将word文件转为pdf的方法:
1、修改php.ini
添加:extension=php_com_dotnet.dll
去除注释:com.allow_dcom = true
重启环境
相关学习推荐:php编程(视频)
2、配置office支持
(1)安装微软office套件。(office 2007 需要手动安装 `Microsoft Save as PDF and XPS`)
(2)配置office组件服务
win+R打开运行菜单,输入dcomcnfg
找到 [组件服务] —— [计算机]—— [我的电脑] —— [DCOM配置] —— [Microsoft Wrord 97-2003文档]
右键 [Microsoft Wrord 97-2003文档] 设置属性 [标识] 为 [交互式用户]
代码如下:
/**
 * @desc xmsb_wordToPdf 将word转换为pdf
 * @param string $wordPath word原文件路径
 * @param string $outPath pdf输出路径
 * @return string
 */
function xmsb_wordToPdf($wordPath, $outPath)
{
 // 原文件不存在则返回错误
 if(!file_exists($wordPath)) 
 {
 return 'word原文件不存在';
 }
 
 // 输出目录不存在则创建目录
 if(!file_exists($tmpPath = rtrim($outPath, basename($outPath))))
 {
 mkdir($tmpPath, 0777, true);
 }
 
 $filenamedoc = dirname(__FILE__)."/".$wordPath;
 $filenamepdf = dirname(__FILE__)."/".$outPath;
 
 // 删除已有同名文件
 if(file_exists($filenamepdf)) 
 {
 unlink($filenamepdf);
 }
 
 // 执行转换操作
 $word = new COM("word.Application") or die("Could not initialise Object");
 $word->Documents->Open($filenamedoc);
 $word->ActiveDocument->ExportAsFixedFormat($filenamepdf, 17, false, 0, 0, 0, 0, 7, true, true, 2, true, true, false);
 $word->Quit(false);
 unset($word);
 
 // 在页面中显示生成的pdf
 // header('Content-type: application/pdf');
 // header('filename='.$filenamepdf);
 // readfile($filenamepdf);
 
 return '转换成功';
}
// 测试运行
echo xmsb_wordToPdf('./word/word1.docx', './pdf/output1.pdf');下载本文