PDF全稱Portable Document Format,譯為可移植文檔格式,是Adobe公司推出的便攜文檔格式。PDF具有與作業系統無關的特性,這一性能使它成為在Internet上進行電子文檔發行和數位化信息傳播的理想文檔格式。今天我們來討論如何使用PHP創建PDF文檔,以及使用PHP修改PDF。
要想在PHP中使用PDF文檔,我們需要用到TCPDF包,一個PHP用來讀取PDF的類。
PHP創建PDF文檔
你可以從下面給出的連結下載TCPDF包。
TCPDF - PHP class for PDF:https://sourceforge.net/projects/tcpdf/files/
這是一個免費且易用的插件包,下面我們給出一些示例來演示如何使用TCPDF包。
示例一:使用PHP生成一個簡單的PDF文檔
以下為引用的內容: require_once('../config/lang/eng.php'); require_once('../tcpdf.php'); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetCreator(PDF_CREATOR); $pdf->SetAuthor('Nicola Asuni'); $pdf->SetTitle('TCPDF Example 002'); $pdf->SetSubject('TCPDF Tutorial'); $pdf->SetKeywords('TCPDF, PDF, example, test, guide'); $pdf->setPrintHeader(false); $pdf->setPrintFooter(false); $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); $pdf->setLanguageArray($l); $pdf->SetFont('times', 'BI', 20); $pdf->AddPage(); $pdf->Cell(0, 10, 'Example 002', 1, 1, 'C'); $pdf->Output('example_002.pdf', 'I'); ?> |
使用PHP修改PDF文檔
下面我們討論如何使用PHP修改PDF文檔。假設我們需要將一張圖片通過PHP程序加入到PDF中,示例代碼如下:
示例二:使用PHP在PDF中增加一張圖片
以下為引用的內容: require_once('../config/lang/eng.php'); require_once('../tcpdf.php'); $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); $pdf->SetCreator(PDF_CREATOR); $pdf->SetAuthor('Nicola Asuni'); $pdf->SetTitle('TCPDF Example 009'); $pdf->SetSubject('TCPDF Tutorial'); $pdf->SetKeywords('TCPDF, PDF, example, test, guide'); $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING); $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA)); $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); $pdf->SetHeaderMargin(PDF_MARGIN_HEADER); $pdf->SetFooterMargin(PDF_MARGIN_FOOTER); $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); $pdf->setLanguageArray($l); $pdf->AddPage(); $pdf->setJPEGQuality(75); $pdf->Image('../images/image_demo.jpg', 50, 50, 100, 150, '', 'https://www.tcpdf.org', '', true, 150); $pdf->Output('example_009.pdf', 'I'); ?> |
更多關於TCPDF - PHP class for PDF的示例可以參考:
https://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf_examples
同時,你也可以使用TCPDF的基礎屬性進行PDF文檔的管理。如果你想自己開發一個PHP的PDF文檔類,可以參考PHP文檔中關於PDF的一些函數介紹:https://www.php.net/manual/en/ref.pdf.php