温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

php将doc文件转为pdf文件的方法

发布时间:2020-09-29 15:02:42 来源:亿速云 阅读:252 作者:小新 栏目:编程语言

php将doc文件转为pdf文件的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!

php将doc文件转为pdf文件的方法:1、编辑php.ini文件,添加【extension=php_com_dotnet.dll】;2、配置office组件服务;3、利用ExportAsFixedFormat函数转换文件即可。

具体方法:

1、修改php.ini

  • 添加:extension=php_com_dotnet.dll

  • 去除注释:com.allow_dcom = true

  • 重启环境

2、配置office支持

  • 安装微软office套件。(office 2007 需要手动安装 `Microsoft Save as PDF and XPS`)

  • 配置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将doc文件转为pdf文件的方法大概了解了吗?希望文章内容对大家有所帮助。如果想了解更多相关文章内容,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI