example_066.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. <?php
  2. /**
  3. * Example 066 for TCPDF library
  4. *
  5. * @description Creates an example PDF/A-1b document using TCPDF
  6. * @author Nicola Asuni - Tecnick.com LTD <info@tecnick.com>
  7. * @license LGPL-3.0
  8. */
  9. /**
  10. * Creates an example PDF/A-1b document using TCPDF
  11. *
  12. * @abstract TCPDF - Example: PDF/A-1b mode
  13. * @author Nicola Asuni
  14. * @since 2021-03-26
  15. */
  16. // Load the autoloader, move one folder back from examples
  17. require_once __DIR__ . '/../vendor/autoload.php';
  18. // create new PDF document
  19. $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false, true);
  20. // set document information
  21. $pdf->setCreator(PDF_CREATOR);
  22. $pdf->setAuthor('Nicola Asuni');
  23. $pdf->setTitle('TCPDF Example 066');
  24. $pdf->setSubject('TCPDF Tutorial');
  25. $pdf->setKeywords('TCPDF, PDF, example, test, guide');
  26. // set default header data
  27. $pdf->setHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE . ' 066', PDF_HEADER_STRING);
  28. // set header and footer fonts
  29. $pdf->setHeaderFont(array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
  30. $pdf->setFooterFont(array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
  31. // set default monospaced font
  32. $pdf->setDefaultMonospacedFont(PDF_FONT_MONOSPACED);
  33. // set margins
  34. $pdf->setMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
  35. $pdf->setHeaderMargin(PDF_MARGIN_HEADER);
  36. $pdf->setFooterMargin(PDF_MARGIN_FOOTER);
  37. // set auto page breaks
  38. $pdf->setAutoPageBreak(true, PDF_MARGIN_BOTTOM);
  39. // set image scale factor
  40. $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
  41. // set some language-dependent strings (optional)
  42. if (@file_exists(__DIR__ . '/lang/eng.php')) {
  43. require_once __DIR__ . '/lang/eng.php';
  44. $pdf->setLanguageArray($l);
  45. }
  46. // ---------------------------------------------------------
  47. // set default font subsetting mode
  48. $pdf->setFontSubsetting(true);
  49. // Set font
  50. $pdf->setFont('helvetica', '', 14, '', true);
  51. // Add a page
  52. // This method has several options, check the source code documentation for more information.
  53. $pdf->AddPage();
  54. // Set some content to print
  55. $html = <<<HTML
  56. <h1>Example of <a href="http://www.tcpdf.org" style="text-decoration:none;background-color:#CC0000;color:black;">&nbsp;<span style="color:black;">TC</span><span style="color:white;">PDF</span>&nbsp;</a> document in <span style="background-color:#99ccff;color:black;"> PDF/A-1b </span> mode.</h1>
  57. <i>This document conforms to the standard <b>PDF/A-1b (ISO 19005-1:2005)</b>.</i>
  58. <p>Please check the source code documentation and other examples for further information (<a href="http://www.tcpdf.org">http://www.tcpdf.org</a>).</p>
  59. HTML;
  60. // Print text using writeHTMLCell()
  61. $pdf->writeHTMLCell(0, 0, '', '', $html, 0, 1, 0, true, '', true);
  62. // ---------------------------------------------------------
  63. // Close and output PDF document
  64. // This method has several options, check the source code documentation for more information.
  65. $pdf->Output('example_066.pdf', 'I');