程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 使用PHP創建和修改PDF文檔

使用PHP創建和修改PDF文檔

編輯:關於PHP編程

【php100譯稿】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文檔

  1.  
  2. require_once('../config/lang/eng.php');  
  3. require_once('../tcpdf.php');  
  4.  
  5. // create new PDF document  
  6. $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);   
  7.  
  8. // set document information  
  9. $pdf->SetCreator(PDF_CREATOR);  
  10. $pdf->SetAuthor('Nicola Asuni');  
  11. $pdf->SetTitle('TCPDF Example 002');  
  12. $pdf->SetSubject('TCPDF Tutorial');  
  13. $pdf->SetKeywords('TCPDF, PDF, example, test, guide');  
  14.  
  15. // remove default header/footer  
  16. $pdf->setPrintHeader(false);  
  17. $pdf->setPrintFooter(false);  
  18.  
  19. // set default monospaced font  
  20. $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);  
  21.  
  22. //set margins  
  23. $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);  
  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  
  32. $pdf->setLanguageArray($l);   
  33.  
  34. // ---------------------------------------------------------  
  35.  
  36. // set font  
  37. $pdf->SetFont('times', 'BI', 20);  
  38.  
  39. // add a page  
  40. $pdf->AddPage();  
  41.  
  42. // print a line using Cell()  
  43. $pdf->Cell(0, 10, 'Example 002', 1, 1, 'C');  
  44.  
  45. // ---------------------------------------------------------  
  46.  
  47. //Close and output PDF document  
  48. $pdf->Output('example_002.pdf', 'I');  
  49. ?> 

使用PHP修改PDF文檔

下面我們討論如何使用PHP修改PDF文檔。假設我們需要將一張圖片通過PHP程序加入到PDF中,示例代碼如下:

示例二:使用PHP在PDF中增加一張圖片

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

更多關於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


 


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved