PHP實(shí)現(xiàn)HTML生成PDF文件的方法
本文實(shí)例講述了在linux中利用HTML2FPDF與wkhtmltoimage把網(wǎng)頁html直接生成pdf格式的文件方法,分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:
找到一款在FPDF和HTML2FPDF源碼基礎(chǔ)上開發(fā)的一套開源程序,作者很給力。基本解決了中文(以及日語、韓語及東南亞和全球語言)亂碼的問題,在Windows/Linux開發(fā)環(huán)境下測試可用,不需要安裝別的組件支持,是沒有VPS和獨(dú)立服務(wù)器的網(wǎng)站開發(fā)者的福音。
不多說,源碼名稱是MPDF,官方地址是:http://www.mpdf1.com/ 已經(jīng)更新到5.6版。
到官網(wǎng)下載,解壓到網(wǎng)站目錄下,使用。
include('mpdf.php');
$mpdf=new mPDF('UTF-8','A4','','',15,15,44,15);
$mpdf->useAdobeCJK = true;
$mpdf->SetAutoFont(AUTOFONT_ALL);
$mpdf->SetDisplayMode('fullpage');
//$mpdf->watermark_font = 'GB';
//$mpdf->SetWatermarkText('中國水印',0.1);
$url = 'http://www.你的域名.com/';
$strContent = file_get_contents($url);
//print_r($strContent);die;
$mpdf->showWatermarkText = true;
$mpdf->SetAutoFont();
//$mpdf->SetHTMLHeader( '頭部' );
//$mpdf->SetHTMLFooter( '底部' );
$mpdf->WriteHTML($strContent);
$mpdf->Output('ss.pdf');
//$mpdf->Output('tmp.pdf',true);
//$mpdf->Output('tmp.pdf','d');
//$mpdf->Output();
exit;
?>
PASS:需要注意的是,PHP文件要是UTF-8。不用心情天空貼出的代碼,自己寫時(shí)出現(xiàn)方格亂碼時(shí),可以在config.php文件里的$this->useAdobeCJK = false;修改成true或者必須標(biāo)注:$mpdf->useAdobeCJK = true; 官方有文檔,可以自己摸索。
這個(gè)不完美方法,MPDF只能解析相對(duì)簡單的css(不能解析js和css中ul li等標(biāo)簽)?,F(xiàn)在既然使用了wkhtmltoimage擴(kuò)展,也就不在乎wkhtmltopdf的使用了。
同樣,wkhtmltoimage 0.11會(huì)出現(xiàn)錯(cuò)誤,需要下載0.10.0_rc2版。
32位:
tar jxf wkhtmltopdf-0.10.0_rc2-static-i386.tar.bz2
cp wkhtmltoimage-i386 /usr/local/bin/wkhtmltopdf
64位
mv wkhtmltoimage-0.10.0_rc2-static-amd64.tar.bz2 wkhtmltoimage-0.10.0_rc2-static-amd64.tar
tar -xvf wkhtmltopdf-0.10.0_rc2-static-amd64.tar
mv wkhtmltoimage-amd64 /usr/bin/wkhtmltopdf測試 wkhtmltopdf http://www.你的域名.com/ 你的域名.pdfphp shell_exec() 執(zhí)行shell_exec('/usr/local/bin/wkhtmltopdf http://www.你的域名.com/ /usr/local/wwwroot/你的域名.com/你的域名.pdf');
希望本文所述對(duì)大家的php程序設(shè)計(jì)有所幫助。
- php實(shí)現(xiàn)生成PDF文件的方法示例【基于FPDF類庫】
- PHP中使用Imagick讀取pdf并生成png縮略圖實(shí)例
- 使用PHP把HTML生成PDF文件的幾個(gè)開源項(xiàng)目介紹
- PHP在網(wǎng)頁中動(dòng)態(tài)生成PDF文件詳細(xì)教程
- PHP中使用TCPDF生成PDF文檔實(shí)例
- php FPDF類庫應(yīng)用實(shí)現(xiàn)代碼
- PHP中使用imagick實(shí)現(xiàn)把PDF轉(zhuǎn)成圖片
- PHP實(shí)現(xiàn)在線閱讀PDF文件的方法
- PHP使用MPDF類生成PDF的方法
- PHP下SSL加密解密、驗(yàn)證、簽名方法(很簡單)
- php 生成簽名及驗(yàn)證簽名詳解
- php實(shí)現(xiàn)往pdf中加數(shù)字簽名操作示例【附源碼下載】
相關(guān)文章
thinkphp5.0自定義驗(yàn)證規(guī)則使用方法
本文主要講了thinkphp5.0版本中自定義驗(yàn)證規(guī)則的使用方法和一些注意事項(xiàng)。2017-11-11PHP+Apache環(huán)境中如何隱藏Apache版本
以PHP+Apache服務(wù)器環(huán)境為例,給大家講解如何能夠隱藏Apache的版本號(hào)以及具體做法。2017-11-11header函數(shù)設(shè)置響應(yīng)頭解決php跨域問題實(shí)例詳解
在本篇文章里小編給大家整理的是關(guān)于header函數(shù)設(shè)置響應(yīng)頭解決php跨域問題實(shí)例內(nèi)容,有需要的朋友們可以參考下。2020-01-01php 使用curl模擬ip和來源進(jìn)行訪問的實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄猵hp 使用curl模擬ip和來源進(jìn)行訪問的實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-05-05PHP創(chuàng)建對(duì)象的六種方式實(shí)例總結(jié)
這篇文章主要介紹了PHP創(chuàng)建對(duì)象的六種方式,結(jié)合實(shí)例形式總結(jié)分析了php類的定義及對(duì)象實(shí)例化常見操作技巧,需要的朋友可以參考下2019-06-06PHP中通過HTTP_USER_AGENT判斷是否為手機(jī)移動(dòng)終端的函數(shù)代碼
經(jīng)常我們需要做一些判斷是否是手機(jī)訪問的時(shí)候,然后進(jìn)行自動(dòng)跳轉(zhuǎn)操作,這是從一個(gè)PHP框架分離出來的一段判斷是否為手機(jī)移動(dòng)終端的函數(shù),分享下2013-02-02