您好,登錄后才能下訂單哦!
php實(shí)現(xiàn)doc轉(zhuǎn)pdf的方法?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!
php實(shí)現(xiàn)doc轉(zhuǎn)pdf的方法:首先引入autoload文件;然后通過(guò)“$templateProcessor->saveAs('test.docx');”加載模板的word文件;最后將“test.docx”轉(zhuǎn)換成“test.pdf”即可。
php 編輯PDF文件,php word 轉(zhuǎn) PDF,php 編輯 word,phpoffice,phpword,libreoffice
廢話不多說(shuō),直接說(shuō)需求
1、項(xiàng)目經(jīng)理:“小江啊,我這里有份合同,是word格式的,你把它生成PDF格式,并且里面的內(nèi)容還能編輯”。
大致思路
1、遇到這種需求,我有點(diǎn)震驚了,什么需求啊這是,以前從沒(méi)碰到過(guò)。然后google啊百度啊一大推的東西。我也看了幾種常規(guī)生成pdf的php第三方類庫(kù)。
有tcpdf,zend framework,fpdf等,tcpdf生成pdf呢,直接點(diǎn)呢就是文檔的內(nèi)容還要用html,css寫,那要用這個(gè)還不吐血,zend framework 下面有個(gè)生成pdf的類庫(kù),但是有個(gè)致命的缺點(diǎn),不支持中文,中文會(huì)亂碼,fpdf也是一樣。我全都試了個(gè)遍,沒(méi)個(gè)毛用,感覺(jué)要被這個(gè)玩意搞死,當(dāng)我快要放棄的時(shí)候,我看到了phpword,看到了希望,phpword支持編輯word文檔,但轉(zhuǎn)換成pdf不是他的拿手好菜,無(wú)奈最后下了個(gè)libreoffice轉(zhuǎn)換器,這才勉強(qiáng)完成了這個(gè)需求,哎,覺(jué)得非常不容易,一定要分享下,如果有更好的辦法,可在下方評(píng)論:
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', '廣東省深圳市寶安區(qū)西鄉(xiāng)'); $templateProcessor->saveAs('test.docx');
以上代碼說(shuō)明: 加載我們模板的word文件,我們?cè)谄淅锩嬖O(shè)置變量格式是${name} 等等這種格式,生成的test.docx就是把setValue的值賦給了變量,是不是很神奇。
3、最后將test.docx 轉(zhuǎn)換成test.pdf,這一步也走的很心酸,查了很多資料,總以為有個(gè)第三方的庫(kù)可以解決,但還是沒(méi)找到,libreoffice是一個(gè)開(kāi)源的軟件,這是個(gè)大家伙,將近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 系統(tǒng)函數(shù)
感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)php實(shí)現(xiàn)doc轉(zhuǎn)pdf的方法大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。