php格式怎么转换为pdf,PHP如何将将word文件转为pdf

php格式怎么转换为pdf,PHP如何将将word文件转为pdfPHP将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)安装微软off…

大家好,又见面了,我是你们的朋友全栈君。

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

b74e5083c9ce8e762bb1d9e04ffd78dd.png

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’);

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/143948.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 优先级队列的使用[通俗易懂]

    优先级队列的使用[通俗易懂]优先级队列(priorityqueue)中的元素可以按照任意的顺序插入,却总是按照排序的顺序进行检索。也就是说,无论何时调用remove方法,总会获得当前优先级队列中最小的元素.然后,优先级队列并没有对所有的元素进行排序。如果用迭代的方式处理这些元素,并不需要对它们进行排序。优先级队列使用了一个优雅且高效的数据结构,称为堆(heap)。堆事一个可以自我调整的二叉树,对树执行添加(add)和删除(

    2025年12月2日
    4
  • pytest的使用_调用方法的具体调用格式为

    pytest的使用_调用方法的具体调用格式为Pytest执行用例规则Pytest在命令行中支持多种方式来运行和选择测试用例1.对某个目录下所有的用例pytest2.对模块中进行测试pytesttest_mod.py3.对文件夹进行

    2022年7月28日
    6
  • navigator.appVersion的值_你使用的是netscape浏览器

    navigator.appVersion的值_你使用的是netscape浏览器来源:https://developer.mozilla.org/zh-CN/docs/Web/API/NavigatorID/appName英文:  TheNavigatorID.appNamepropertyreturnsthenameofthebrowser.TheHTML5specificationalsoallowsanybrowsertoreturn”Netscape”here,forcompatibilityreasons.Note:Do.

    2025年10月31日
    4
  • django drf_django 消息队列

    django drf_django 消息队列前言我们上篇文章使用到了Serializer类,可能有小伙伴说太过复杂,那么本篇就为大家带来更加简便的序列化类ModelSerializerModelSerializer先来看下ModelSer

    2022年7月29日
    16
  • PyCharm安装及使用

    PyCharm安装及使用

    2021年10月16日
    50
  • 头文件cstring、string、string.h的区别「建议收藏」

    头文件cstring、string、string.h的区别「建议收藏」头文件cstring、string、string.h的区别<string>是C++标准库头文件,使用stirng类型必须首先包含string头文件,用于字符串操作,string类型可以进行+、=、+=、>等运算。std::string类实际上是STL模板类std::basic_string的具体化。#include<string>usingnamespacestd;strings;<cstring>是C标准库头文件<strin

    2025年9月3日
    5

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号