首页 > 后端开发 > PHP问题 > PHP如何将将word文件转为pdf

PHP如何将将word文件转为pdf

coldplay.xixi
发布: 2023-03-04 09:26:02
原创
6242 人浏览过

PHP将word文件转为pdf的方法:首先修改【php.ini】,并重启环境;然后安装微软office套件;最后配置office组件服务即可。

PHP如何将将word文件转为pdf

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');
登录后复制

相关推荐:编程视频课程

以上是PHP如何将将word文件转为pdf的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板