Home >Backend Development >PHP Tutorial >Create and modify PDF documents using PHP_PHP Tutorial

Create and modify PDF documents using PHP_PHP Tutorial

WBOY
WBOYOriginal
2016-07-15 13:29:381298browse

[php100 translation] The full name of PDF is Portable Document Format, which is translated as Portable Document Format. It is a portable document format launched by Adobe. PDF has the characteristics of being independent of the operating system, which makes it an ideal document format for electronic document distribution and digital information dissemination on the Internet. Today we will discuss how to create PDF documents using PHP and modify PDF using PHP.

To use PDF documents in PHP, we need to use the TCPDF package, a class used by PHP to read PDF.

Create PDF document with PHP

You can download the TCPDF package from the link given below.

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

This is a free and easy-to-use plug-in package, Below we give some examples to demonstrate how to use the TCPDF package.

Example 1: Use PHP to generate a simple PDF document

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

Use PHP to modify a PDF document

Let’s discuss how to use PHP to modify it PDF document. Suppose we need to add a picture to PDF through a PHP program. The sample code is as follows:

Example 2: Use PHP to add a picture to PDF

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

For more examples of TCPDF - PHP class for PDF, please refer to:

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

At the same time, you can also use the basic properties of TCPDF to manage PDF documents. If you want to develop a PHP PDF document class yourself, you can refer to some function introductions about PDF in the PHP documentation: http://www.php.net/manual/en/ref.pdf.php



www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/446362.htmlTechArticle[php100 translation] The full name of PDF is Portable Document Format, translated as Portable Document Format, which is a portable document format launched by Adobe. Document format. PDF has operating system-independent features. This performance...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn