1<?php
2//============================================================+
3// File name   : example_051.php
4// Begin       : 2009-04-16
5// Last Update : 2013-05-14
6//
7// Description : Example 051 for TCPDF class
8//               Full page background
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: Full page background
23 * @author Nicola Asuni
24 * @since 2009-04-16
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	//Page header
34	public function Header() {
35		// get the current page break margin
36		$bMargin = $this->getBreakMargin();
37		// get current auto-page-break mode
38		$auto_page_break = $this->AutoPageBreak;
39		// disable auto-page-break
40		$this->SetAutoPageBreak(false, 0);
41		// set bacground image
42		$img_file = K_PATH_IMAGES.'image_demo.jpg';
43		$this->Image($img_file, 0, 0, 210, 297, '', '', '', false, 300, '', false, false, 0);
44		// restore auto-page-break status
45		$this->SetAutoPageBreak($auto_page_break, $bMargin);
46		// set the starting point for the page content
47		$this->setPageMark();
48	}
49}
50
51// create new PDF document
52$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
53
54// set document information
55$pdf->SetCreator(PDF_CREATOR);
56$pdf->SetAuthor('Nicola Asuni');
57$pdf->SetTitle('TCPDF Example 051');
58$pdf->SetSubject('TCPDF Tutorial');
59$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
60
61// set header and footer fonts
62$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
63
64// set default monospaced font
65$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
66
67// set margins
68$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
69$pdf->SetHeaderMargin(0);
70$pdf->SetFooterMargin(0);
71
72// remove default footer
73$pdf->setPrintFooter(false);
74
75// set auto page breaks
76$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
77
78// set image scale factor
79$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
80
81// set some language-dependent strings (optional)
82if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
83	require_once(dirname(__FILE__).'/lang/eng.php');
84	$pdf->setLanguageArray($l);
85}
86
87// ---------------------------------------------------------
88
89// set font
90$pdf->SetFont('times', '', 48);
91
92// add a page
93$pdf->AddPage();
94
95// Print a text
96$html = '<span style="background-color:yellow;color:blue;">&nbsp;PAGE 1&nbsp;</span>
97<p stroke="0.2" fill="true" strokecolor="yellow" color="blue" style="font-family:helvetica;font-weight:bold;font-size:26pt;">You can set a full page background.</p>';
98$pdf->writeHTML($html, true, false, true, false, '');
99
100
101// add a page
102$pdf->AddPage();
103
104// Print a text
105$html = '<span style="background-color:yellow;color:blue;">&nbsp;PAGE 2&nbsp;</span>';
106$pdf->writeHTML($html, true, false, true, false, '');
107
108// --- example with background set on page ---
109
110// remove default header
111$pdf->setPrintHeader(false);
112
113// add a page
114$pdf->AddPage();
115
116
117// -- set new background ---
118
119// get the current page break margin
120$bMargin = $pdf->getBreakMargin();
121// get current auto-page-break mode
122$auto_page_break = $pdf->getAutoPageBreak();
123// disable auto-page-break
124$pdf->SetAutoPageBreak(false, 0);
125// set bacground image
126$img_file = K_PATH_IMAGES.'image_demo.jpg';
127$pdf->Image($img_file, 0, 0, 210, 297, '', '', '', false, 300, '', false, false, 0);
128// restore auto-page-break status
129$pdf->SetAutoPageBreak($auto_page_break, $bMargin);
130// set the starting point for the page content
131$pdf->setPageMark();
132
133
134// Print a text
135$html = '<span style="color:white;text-align:center;font-weight:bold;font-size:80pt;">PAGE 3</span>';
136$pdf->writeHTML($html, true, false, true, false, '');
137
138// ---------------------------------------------------------
139
140//Close and output PDF document
141$pdf->Output('example_051.pdf', 'I');
142
143//============================================================+
144// END OF FILE
145//============================================================+
146