123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- <?php
- //============================================================+
- // File name : example_049.php
- // Begin : 2009-04-03
- // Last Update : 2024-03-18
- //
- // Description : Example 049 for TCPDF class
- // WriteHTML with TCPDF callback functions
- //
- // Author: Nicola Asuni
- //
- // (c) Copyright:
- // Nicola Asuni
- // Tecnick.com LTD
- // www.tecnick.com
- // info@tecnick.com
- //============================================================+
- /**
- * Creates an example PDF TEST document using TCPDF
- * @package com.tecnick.tcpdf
- * @abstract TCPDF - Example: WriteHTML with TCPDF callback functions
- * @author Nicola Asuni
- * @since 2008-03-04
- * @group html
- * @group pdf
- */
- // Include the main TCPDF library (search for installation path).
- require_once('tcpdf_include.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 049');
- $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.' 049', 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 (optional)
- if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
- require_once(dirname(__FILE__).'/lang/eng.php');
- $pdf->setLanguageArray($l);
- }
- // ---------------------------------------------------------
- // set font
- $pdf->setFont('helvetica', '', 10);
- // add a page
- $pdf->AddPage();
- /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
- IMPORTANT:
- If you are printing user-generated content, the tcpdf tag should be considered unsafe.
- This tag is disabled by default by the K_TCPDF_CALLS_IN_HTML constant on TCPDF configuration file.
- Please use this feature only if you are in control of the HTML content and you are sure that it does not contain any harmful code.
- For security reasons, the content of the TCPDF tag must be prepared and encoded with the serializeTCPDFtag() method (see the example below).
- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
- $html = '<h1>Test TCPDF Methods in HTML</h1>
- <h2 style="color:red;">IMPORTANT:</h2>
- <span style="color:red;">If you are using user-generated content, the tcpdf tag should be considered unsafe.<br />
- Please use this feature only if you are in control of the HTML content and you are sure that it does not contain any harmful code.<br />
- This feature is disabled by default by the <b>K_TCPDF_CALLS_IN_HTML</b> constant on TCPDF configuration file.</span>
- <h2>write1DBarcode method in HTML</h2>';
- $data = $pdf->serializeTCPDFtag('write1DBarcode', array('CODE 39', 'C39', '', '', 80, 30, 0.4, array('position'=>'S', 'border'=>true, 'padding'=>4, 'fgcolor'=>array(0,0,0), 'bgcolor'=>array(255,255,255), 'text'=>true, 'font'=>'helvetica', 'fontsize'=>8, 'stretchtext'=>4), 'N'));
- $html .= '<tcpdf data="'.$data.'" />';
- $data = $pdf->serializeTCPDFtag('write1DBarcode', array('CODE 128', 'C128', '', '', 80, 30, 0.4, array('position'=>'S', 'border'=>true, 'padding'=>4, 'fgcolor'=>array(0,0,0), 'bgcolor'=>array(255,255,255), 'text'=>true, 'font'=>'helvetica', 'fontsize'=>8, 'stretchtext'=>4), 'N'));
- $html .= '<tcpdf data="'.$data.'" />';
- $data = $pdf->serializeTCPDFtag('AddPage');
- $html .= '<tcpdf data="'.$data.'" /><h2>Graphic Functions</h2>';
- $data = $pdf->serializeTCPDFtag('SetDrawColor', array(0));
- $html .= '<tcpdf data="'.$data.'" />';
- $data = $pdf->serializeTCPDFtag('Rect', array(50, 50, 40, 10, 'DF', array(), array(0,128,255)));
- $html .= '<tcpdf data="'.$data.'" />';
- // output the HTML content
- $pdf->writeHTML($html, true, 0, true, 0);
- // - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- // reset pointer to the last page
- $pdf->lastPage();
- // ---------------------------------------------------------
- //Close and output PDF document
- $pdf->Output('example_049.pdf', 'I');
- //============================================================+
- // END OF FILE
- //============================================================+
|