php如何实现doc转pdf

php实现doc转pdf的方法:首先引入autoload文件;然后通过“$templateProcessor->saveAs('test.docx');”加载模板的word文件;最后将“test.docx”转换成“test.pdf”即可。

创新互联专业为企业提供南皮网站建设、南皮做网站、南皮网站设计、南皮网站制作等企业网站建设、网页设计与制作、南皮企业网站模板建站服务,10余年南皮做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

推荐:《PHP视频教程》

php 编辑PDF文件,php word 转 PDF,php 编辑 word,phpoffice,phpword,libreoffice

废话不多说,直接说需求

1、项目经理:“小江啊,我这里有份合同,是word格式的,你把它生成PDF格式,并且里面的内容还能编辑”。

大致思路

1、遇到这种需求,我有点震惊了,什么需求啊这是,以前从没碰到过。然后google啊百度啊一大推的东西。我也看了几种常规生成pdf的php第三方类库。

有tcpdf,zend framework,fpdf等,tcpdf生成pdf呢,直接点呢就是文档的内容还要用html,css写,那要用这个还不吐血,zend framework 下面有个生成pdf的类库,但是有个致命的缺点,不支持中文,中文会乱码,fpdf也是一样。我全都试了个遍,没个毛用,感觉要被这个玩意搞死,当我快要放弃的时候,我看到了phpword,看到了希望,phpword支持编辑word文档,但转换成pdf不是他的拿手好菜,无奈最后下了个libreoffice转换器,这才勉强完成了这个需求,哎,觉得非常不容易,一定要分享下,如果有更好的办法,可在下方评论:

1、直接引入autoload文件

require_once ’ vendor/phpoffice/phpword/bootstrap.php’;

2、

$templateProcessor = new      \\PhpOffice\\PhpWord\\TemplateProcessor('layout.docx');
       $templateProcessor->setValue('name', 'AAAAAAA');
       $templateProcessor->setValue('ID_card', '36042819950812782112');
       $templateProcessor->setValue('mobile', '12312341234');
       $templateProcessor->setValue('adress', '广东省深圳市宝安区西乡');
       $templateProcessor->saveAs('test.docx');

以上代码说明: 加载我们模板的word文件,我们在其里面设置变量格式是${name} 等等这种格式,生成的test.docx就是把setValue的值赋给了变量,是不是很神奇。

3、最后将test.docx 转换成test.pdf,这一步也走的很心酸,查了很多资料,总以为有个第三方的库可以解决,但还是没找到,libreoffice是一个开源的软件,这是个大家伙,将近1G的大小。下面将用法介绍下:

system(“export HOME=/tmp/ && libreoffice --invisible --convert-to pdf --outdir /phpstudy/www/Uploads/activity/2017-02-28/ /phpstudy/www/Uploads/activity/2017-02-28/58b53f9cad22e.xls 2>&1”);

直接用system 系统函数

本文就介绍到这里吧,有疑问的小伙伴欢迎下方评论。

名称栏目:php如何实现doc转pdf
新闻来源:/article4/cphjie.html

成都网站建设公司_创新互联,为您提供营销型网站建设网站内链网站营销面包屑导航微信小程序网站导航

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都seo排名网站优化