怎么用PHP创建和修改PDF文档

楼主
怎么用PHP创建和修改PDF文档
[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]PDF全称Portable Document Format,译为可移植文档格式,是Adobe公司推出的便携文档格式。PDF具有与操作系统无关的特性,这一性能使它成为在Internet上进行电子文档发行和数字化信息传播的理想文档格式。今天我们来讨论如何使用PHP创建PDF文档,以及使用PHP修改PDF。[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT]

[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]要想在PHP中使用PDF文档,我们需要用到TCPDF包,一个PHP用来读取PDF的类。[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT]

[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]PHP创建PDF文档[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT]

[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]这是一个免费且易用的插件包,下面我们给出一些示例来演示如何使用TCPDF包。[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT]

[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]示例一:使用PHP生成一个简单的PDF文档[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT][P][LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(102, 102, 102)][BGCOLOR=rgb(247, 247, 247)][SIZE=14px][P][ol][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]require_once('../config/lang/eng.php');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]require_once('../tcpdf.php');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// create new PDF document  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);    
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set document information  $pdf->SetCreator(PDF_CREATOR);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetAuthor('Nicola Asuni');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetTitle('TCPDF Example 002');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetSubject('TCPDF Tutorial');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetKeywords('TCPDF, PDF, example, test, guide');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// remove default header/footer  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->setPrintHeader(false);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->setPrintFooter(false);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set default monospaced font  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set margins  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set auto page breaks  $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set image scale factor  $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);    
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set some language-dependent strings  $pdf->setLanguageArray($l);    
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// ---------------------------------------------------------  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set font  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetFont('times', 'BI', 20);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// add a page  $pdf->AddPage();  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// print a line using Cell()  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->Cell(0, 10, 'Example 002', 1, 1, 'C');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// ---------------------------------------------------------  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//Close and output PDF document
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->Output('example_002.pdf', 'I');  ?>
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px][/SIZE][/FACE][/LINE-HEIGHT][/li][/ol][/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT][/P][i]复制代码[/i][/P]
[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]使用PHP修改PDF文档下面我们讨论如何使用PHP修改PDF文档。[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT]
[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]假设我们需要将一张图片通过PHP程序加入到PDF中,示例代码如下:[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT]
[LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(68, 68, 68)][BGCOLOR=rgb(255, 255, 255)][SIZE=14px]示例二:使用PHP在PDF中增加一张图片[/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT]
[P][LINE-HEIGHT=21px][FACE=DejaVu Sans][COLOR=rgb(102, 102, 102)][BGCOLOR=rgb(247, 247, 247)][SIZE=14px][P][ol][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]require_once('../config/lang/eng.php');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]require_once('../tcpdf.php');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// create new PDF document  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set document information  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetCreator(PDF_CREATOR);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetAuthor('Nicola Asuni');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetTitle('TCPDF Example 009');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetSubject('TCPDF Tutorial');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetKeywords('TCPDF, PDF, example, test, guide');  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set default header data  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set header and footer fonts  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set default monospaced font  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set margins  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set auto page breaks  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set image scale factor  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);    
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//set some language-dependent strings  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->setLanguageArray($l);    
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// ---------------------------------------------------------  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// add a page  $pdf->AddPage();  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// set JPEG quality  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->setJPEGQuality(75);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// Image example  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->Image('../images/image_demo.jpg', 50, 50, 100, 150, '', 'http://www.tcpdf.org', '', true, 150);  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]// ---------------------------------------------------------  
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]//Close and output PDF document
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px]$pdf->Output('example_009.pdf', 'I');  ?>
[/SIZE][/FACE][/LINE-HEIGHT][/li][li][LINE-HEIGHT=1.8][FACE=Monaco, Consolas, ][SIZE=12px][/SIZE][/FACE][/LINE-HEIGHT][/li][/ol][/SIZE][/BGCOLOR][/COLOR][/FACE][/LINE-HEIGHT][/P][i]复制代码[/i][/P][P][SIZE=12px][COLOR=#336699]本文来自于诸侯快讯​http://zhuhouwang.com[/COLOR][/SIZE][/P]

电脑版 Page created in 0.0820 seconds with 4 queries.