1<?php 2//============================================================+ 3// File name : example_003.php 4// Begin : 2008-03-04 5// Last Update : 2013-05-14 6// 7// Description : Example 003 for TCPDF class 8// Custom Header and Footer 9// 10// Author: Nicola Asuni 11// 12// (c) Copyright: 13// Nicola Asuni 14// Tecnick.com LTD 15// www.tecnick.com 16// info@tecnick.com 17//============================================================+ 18 19/** 20 * Creates an example PDF TEST document using TCPDF 21 * @package com.tecnick.tcpdf 22 * @abstract TCPDF - Example: Custom Header and Footer 23 * @author Nicola Asuni 24 * @since 2008-03-04 25 */ 26 27// Include the main TCPDF library (search for installation path). 28require_once('tcpdf_include.php'); 29 30 31// Extend the TCPDF class to create custom Header and Footer 32class MYPDF extends TCPDF { 33 34 //Page header 35 public function Header() { 36 // Logo 37 $image_file = K_PATH_IMAGES.'logo_example.jpg'; 38 $this->Image($image_file, 10, 10, 15, '', 'JPG', '', 'T', false, 300, '', false, false, 0, false, false, false); 39 // Set font 40 $this->SetFont('helvetica', 'B', 20); 41 // Title 42 $this->Cell(0, 15, '<< TCPDF Example 003 >>', 0, false, 'C', 0, '', 0, false, 'M', 'M'); 43 } 44 45 // Page footer 46 public function Footer() { 47 // Position at 15 mm from bottom 48 $this->SetY(-15); 49 // Set font 50 $this->SetFont('helvetica', 'I', 8); 51 // Page number 52 $this->Cell(0, 10, 'Page '.$this->getAliasNumPage().'/'.$this->getAliasNbPages(), 0, false, 'C', 0, '', 0, false, 'T', 'M'); 53 } 54} 55 56// create new PDF document 57$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false); 58 59// set document information 60$pdf->SetCreator(PDF_CREATOR); 61$pdf->SetAuthor('Nicola Asuni'); 62$pdf->SetTitle('TCPDF Example 003'); 63$pdf->SetSubject('TCPDF Tutorial'); 64$pdf->SetKeywords('TCPDF, PDF, example, test, guide'); 65 66// set default header data 67$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING); 68 69// set header and footer fonts 70$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN)); 71$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA)); 72 73// set default monospaced font 74$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED); 75 76// set margins 77$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); 78$pdf->SetHeaderMargin(PDF_MARGIN_HEADER); 79$pdf->SetFooterMargin(PDF_MARGIN_FOOTER); 80 81// set auto page breaks 82$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM); 83 84// set image scale factor 85$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO); 86 87// set some language-dependent strings (optional) 88if (@file_exists(dirname(__FILE__).'/lang/eng.php')) { 89 require_once(dirname(__FILE__).'/lang/eng.php'); 90 $pdf->setLanguageArray($l); 91} 92 93// --------------------------------------------------------- 94 95// set font 96$pdf->SetFont('times', 'BI', 12); 97 98// add a page 99$pdf->AddPage(); 100 101// set some text to print 102$txt = <<<EOD 103TCPDF Example 003 104 105Custom page header and footer are defined by extending the TCPDF class and overriding the Header() and Footer() methods. 106EOD; 107 108// print a block of text using Write() 109$pdf->Write(0, $txt, '', 0, 'C', true, 0, false, false, 0); 110 111// --------------------------------------------------------- 112 113//Close and output PDF document 114$pdf->Output('example_003.pdf', 'I'); 115 116//============================================================+ 117// END OF FILE 118//============================================================+ 119