PHP導出成PDF你用哪一個插件



準備工做php

首先查詢了相關的類庫,有FPDF,zendPDF,TcPDF等等。首先看了下先選擇了FPDF,能夠說除了中文字符之外沒有什麼問題,中文亂碼並且看了下最新版本沒有很好的解決方案,因此只能放棄。後來就專門找支持中文的發現了TcPDF,開始也是中文字體支持不是很好,可是發現了有人作了中文的語言包才使得TcPDF更加完美起來。html

 

簡介tcp

TCPDF 是一個流行的用於生成 PDF 文檔的 PHP 類。TCPDF是當前惟一完整支持 UTF-8 Unicode 以及從右至左書寫的語言包括雙向文稿的 PHP 庫。字體

 

TCPDF說明文檔ui

1、首先調用TCPDF文件spa

require_once('tcpdf.php');code

2、實例化TCPDF類 頁面方向(P =肖像,L =景觀)、測量(mm)、頁面格式orm

$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false); htm

 

如下是使用TCPDF的示例,作法很簡單,看代碼吧blog

 1   vendor('Pdf');
 2         $pdf = new \TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
 3 
 4         $pdf->SetCreator(PDF_CREATOR);
 5         $pdf->SetAuthor('sunnier');
 6         $pdf->SetTitle('123');
 7         $pdf->SetSubject('123');
 8         $pdf->SetKeywords('sunnier');
 9 
10 // set default header data
11         $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);
12 
13 // set header and footer fonts
14         $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
15         $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
16 
17 // set default monospaced font
18         $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
19 
20 // set margins
21         $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
22         $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
23         $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
24 
25 // set auto page breaks
26         $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
27 
28 // set image scale factor
29         $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
30 
31 // set some language-dependent strings (optional)
32         global $l;
33         $pdf->setLanguageArray($l);
34 
35 // ---------------------------------------------------------
36 
37 // set font
38         $pdf->SetFont('simfang', '', 10);
39 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
40 // Print a table
41 
42 // add a page
43         $pdf->AddPage();
44 
45 // 隨便寫HTML
46         $html = 'adsf';
47 
48 // output the HTML content
49         $pdf->writeHTML($html, true, false, true, false, '');
50 
51 // reset pointer to the last page
52         $pdf->lastPage();
53         $pdf->Output('哈哈哈'.pdf', 'I');
54  

 

以上,能夠不斷添加addPage,添加多頁,最後Output輸出本身的名字的文件便可。
演示圖:

 

能夠看到其中能夠插入圖片也是沒有問題的,寫法就按照html寫就OK,固然不僅是支持HTML,只是這裏比較適合這種方式。

相關文章
相關標籤/搜索