如何使用PHP创建和修改PDF文档_PHP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:解读ImageTTFText函数如何实现图像加文字水印
ImageTTFText函数实现PHP图像加文字水印功能 一个ImageTTFText函数包含了如下的参数 imagettftext (image,size,angle, x, y,color,fontfile,text) 意思是 imagettftext() 将字符串 text 画到 image 所代表的图像上,从坐标 x,y(左上角为 0, 0)开始,角度

PDF全称Portable Document Format,译为可移植文档格式,是Adobe公司推出的便携文档格式。PDF具有与操作系统无关的特性,这一性能使它成为在Internet上进行电子文档发行和数字化信息传播的理想文档格式。今天我们来讨论如何使用PHP创建PDF文档,以及使用PHP修改PDF。

要想在PHP中使用PDF文档,我们需要用到TCPDF包,一个PHP用来读取PDF的类。

PHP创建PDF文档

你可以从下面给出的链接下载TCPDF包。

TCPDF - PHP class for PDF:http://sourceforge.net/projects/tcpdf/files/

这是一个免费且易用的插件包,下面我们给出一些示例来演示如何使用TCPDF包。

示例一:使用PHP生成一个简单的PDF文档

以下为引用的内容:

  • require_once('../config/lang/eng.php');  
  • require_once('../tcpdf.php');  
  •  
  • // create new PDF document  
  • $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);   
  •  
  • // set document information  
  • $pdf->SetCreator(PDF_CREATOR);  
  • $pdf->SetAuthor('Nicola Asuni');  
  • $pdf->SetTitle('TCPDF Example 002');  
  • $pdf->SetSubject('TCPDF Tutorial');  
  • $pdf->SetKeywords('TCPDF, PDF, example, test, guide');  
  •  
  • // remove default header/footer  
  • $pdf->setPrintHeader(false);  
  • $pdf->setPrintFooter(false);  
  •  
  • // set default monospaced font  
  • $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);  
  •  
  • //set margins  
  • $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);  
  •  
  • //set auto page breaks  
  • $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);  
  •  
  • //set image scale factor  
  • $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);   
  •  
  • //set some language-dependent strings  
  • $pdf->setLanguageArray($l);   
  •  
  • // ---------------------------------------------------------  
  •  
  • // set font  
  • $pdf->SetFont('times''BI', 20);  
  •  
  • // add a page  
  • $pdf->AddPage();  
  •  
  • // print a line using Cell()  
  • $pdf->Cell(0, 10, 'Example 002', 1, 1, 'C');  
  •  
  • // ---------------------------------------------------------  
  •  
  • //Close and output PDF document  
  • $pdf->Output('example_002.pdf''I');  
  • ?> 

使用PHP修改PDF文档

下面我们讨论如何使用PHP修改PDF文档。假设我们需要将一张图片通过PHP程序加入到PDF中,示例代码如下:

示例二:使用PHP在PDF中增加一张图片

以下为引用的内容:

  • require_once('../config/lang/eng.php');  
  • require_once('../tcpdf.php');  
  •  
  • // create new PDF document  
  • $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);   
  •  
  • // set document information  
  • $pdf->SetCreator(PDF_CREATOR);  
  • $pdf->SetAuthor('Nicola Asuni');  
  • $pdf->SetTitle('TCPDF Example 009');  
  • $pdf->SetSubject('TCPDF Tutorial');  
  • $pdf->SetKeywords('TCPDF, PDF, example, test, guide');  
  •  
  • // set default header data  
  • $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);  
  •  
  • // set header and footer fonts  
  • $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));  
  • $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));  
  •  
  • // set default monospaced font  
  • $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);  
  •  
  • //set margins  
  • $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);  
  • $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);  
  • $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);  
  •  
  • //set auto page breaks  
  • $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);  
  •  
  • //set image scale factor  
  • $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);   
  •  
  • //set some language-dependent strings  
  • $pdf->setLanguageArray($l);   
  •  
  • // ---------------------------------------------------------  
  •  
  • // add a page  
  • $pdf->AddPage();  
  •  
  • // set JPEG quality  
  • $pdf->setJPEGQuality(75);  
  •  
  • // Image example  
  • $pdf->Image('../images/image_demo.jpg', 50, 50, 100, 150, '''http://www.tcpdf.org''', true, 150);  
  •  
  • // ---------------------------------------------------------  
  •  
  • //Close and output PDF document  
  • $pdf->Output('example_009.pdf''I');  
  • ?> 

更多关于TCPDF - PHP class for PDF的示例可以参考:

http://www.tecnick.com/public/code/cp_dpage.php?aiocp_dp=tcpdf_examples

同时,你也可以使用TCPDF的基础属性进行PDF文档的管理。如果你想自己开发一个PHP的PDF文档类,可以参考PHP文档中关于PDF的一些函数介绍:http://www.php.net/manual/en/ref.pdf.php

 

分享:解读PHP如何使用 CURL 同步抓取多个网页
一般CURL 抓网页的方法, 是一页一页抓, 假设要抓 4页, 所费时间各别是 5,10,7,5 秒, 那全部总合所花的时间就是 5 + 10 + 7 + 5 = 27 秒。 若能同时间去抓取多个网页, 所花费的时间 5,10,7,5 秒, 全部总合所花的时间是 10 秒。(花费最多时间的秒数)

来源:模板无忧//所属分类:PHP教程/更新时间:2009-12-09
相关PHP教程