使用PHP创建和修改PDF文档

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

成都创新互联服务项目包括北仑网站建设、北仑网站制作、北仑网页制作以及北仑网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,北仑网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到北仑省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

PHP创建PDF文档

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

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

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

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

 
 
  1. require_once('../config/lang/eng.php');
  2. require_once('../tcpdf.php');
  3. // create new PDF document
  4. $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); 
  5. // set document information
  6. $pdf->SetCreator(PDF_CREATOR);
  7. $pdf->SetAuthor('Nicola Asuni');
  8. $pdf->SetTitle('TCPDF Example 002');
  9. $pdf->SetSubject('TCPDF Tutorial');
  10. $pdf->SetKeywords('TCPDF, PDF, example, test, guide');
  11. // remove default header/footer
  12. $pdf->setPrintHeader(false);
  13. $pdf->setPrintFooter(false);
  14. // set default monospaced font
  15. $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
  16. //set margins
  17. $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
  18. //set auto page breaks
  19. $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
  20. //set image scale factor
  21. $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); 
  22. //set some language-dependent strings
  23. $pdf->setLanguageArray($l); 
  24. // ---------------------------------------------------------
  25. // set font
  26. $pdf->SetFont('times', 'BI', 20);
  27. // add a page
  28. $pdf->AddPage();
  29. // print a line using Cell()
  30. $pdf->Cell(0, 10, 'Example 002', 1, 1, 'C');
  31. // ---------------------------------------------------------
  32. //Close and output PDF document
  33. $pdf->Output('example_002.pdf', 'I');
  34. ?>

使用PHP修改PDF文档

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

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

 
 
  1. require_once('../config/lang/eng.php');
  2. require_once('../tcpdf.php');
  3. // create new PDF document
  4. $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); 
  5. // set document information
  6. $pdf->SetCreator(PDF_CREATOR);
  7. $pdf->SetAuthor('Nicola Asuni');
  8. $pdf->SetTitle('TCPDF Example 009');
  9. $pdf->SetSubject('TCPDF Tutorial');
  10. $pdf->SetKeywords('TCPDF, PDF, example, test, guide');
  11. // set default header data
  12. $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);
  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. // set default monospaced font
  17. $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
  18. //set margins
  19. $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
  20. $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
  21. $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
  22. //set auto page breaks
  23. $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
  24. //set image scale factor
  25. $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); 
  26. //set some language-dependent strings
  27. $pdf->setLanguageArray($l); 
  28. // ---------------------------------------------------------
  29. // add a page
  30. $pdf->AddPage();
  31. // set JPEG quality
  32. $pdf->setJPEGQuality(75);
  33. // Image example
  34. $pdf->Image('../images/image_demo.jpg', 50, 50, 100, 150, '', 'http://www.tcpdf.org', '', true, 150);
  35. // ---------------------------------------------------------
  36. //Close and output PDF document
  37. $pdf->Output('example_009.pdf', 'I');
  38. ?>

#T#更多关于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创建和修改PDF文档
当前路径:http://www.mswzjz.cn/qtweb/news37/100187.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能