source: trunk/client/inc/hpdf5/tecnickcom/tcpdf/examples/example_010.php@ 347

Last change on this file since 347 was 347, checked in by roby, 3 years ago

Aggiornamento per compatibilità con php7.4

File size: 4.3 KB
Line 
1<?php
2//============================================================+
3// File name : example_010.php
4// Begin : 2008-03-04
5// Last Update : 2013-05-14
6//
7// Description : Example 010 for TCPDF class
8// Text on multiple columns
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: Text on multiple columns
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/**
32 * Extend TCPDF to work with multiple columns
33 */
34class MC_TCPDF extends TCPDF {
35
36 /**
37 * Print chapter
38 * @param $num (int) chapter number
39 * @param $title (string) chapter title
40 * @param $file (string) name of the file containing the chapter body
41 * @param $mode (boolean) if true the chapter body is in HTML, otherwise in simple text.
42 * @public
43 */
44 public function PrintChapter($num, $title, $file, $mode=false) {
45 // add a new page
46 $this->AddPage();
47 // disable existing columns
48 $this->resetColumns();
49 // print chapter title
50 $this->ChapterTitle($num, $title);
51 // set columns
52 $this->setEqualColumns(3, 57);
53 // print chapter body
54 $this->ChapterBody($file, $mode);
55 }
56
57 /**
58 * Set chapter title
59 * @param $num (int) chapter number
60 * @param $title (string) chapter title
61 * @public
62 */
63 public function ChapterTitle($num, $title) {
64 $this->SetFont('helvetica', '', 14);
65 $this->SetFillColor(200, 220, 255);
66 $this->Cell(180, 6, 'Chapter '.$num.' : '.$title, 0, 1, '', 1);
67 $this->Ln(4);
68 }
69
70 /**
71 * Print chapter body
72 * @param $file (string) name of the file containing the chapter body
73 * @param $mode (boolean) if true the chapter body is in HTML, otherwise in simple text.
74 * @public
75 */
76 public function ChapterBody($file, $mode=false) {
77 $this->selectColumn();
78 // get esternal file content
79 $content = file_get_contents($file, false);
80 // set font
81 $this->SetFont('times', '', 9);
82 $this->SetTextColor(50, 50, 50);
83 // print content
84 if ($mode) {
85 // ------ HTML MODE ------
86 $this->writeHTML($content, true, false, true, false, 'J');
87 } else {
88 // ------ TEXT MODE ------
89 $this->Write(0, $content, '', 0, 'J', true, 0, false, true, 0);
90 }
91 $this->Ln();
92 }
93} // end of extended class
94
95// ---------------------------------------------------------
96// EXAMPLE
97// ---------------------------------------------------------
98// create new PDF document
99$pdf = new MC_TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
100
101// set document information
102$pdf->SetCreator(PDF_CREATOR);
103$pdf->SetAuthor('Nicola Asuni');
104$pdf->SetTitle('TCPDF Example 010');
105$pdf->SetSubject('TCPDF Tutorial');
106$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
107
108// set default header data
109$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 010', PDF_HEADER_STRING);
110
111// set header and footer fonts
112$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
113$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
114
115// set default monospaced font
116$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
117
118// set margins
119$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
120$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
121$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
122
123// set auto page breaks
124$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
125
126// set image scale factor
127$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
128
129// set some language-dependent strings (optional)
130if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
131 require_once(dirname(__FILE__).'/lang/eng.php');
132 $pdf->setLanguageArray($l);
133}
134
135// ---------------------------------------------------------
136
137// print TEXT
138$pdf->PrintChapter(1, 'LOREM IPSUM [TEXT]', 'data/chapter_demo_1.txt', false);
139
140// print HTML
141$pdf->PrintChapter(2, 'LOREM IPSUM [HTML]', 'data/chapter_demo_2.txt', true);
142
143// ---------------------------------------------------------
144
145//Close and output PDF document
146$pdf->Output('example_010.pdf', 'I');
147
148//============================================================+
149// END OF FILE
150//============================================================+
Note: See TracBrowser for help on using the repository browser.