source: trunk/client/inc/hpdf5/tecnickcom/tcpdf/examples/example_011.php@ 353

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

Aggiornamento per compatibilità con php7.4

File size: 3.8 KB
Line 
1<?php
2//============================================================+
3// File name : example_011.php
4// Begin : 2008-03-04
5// Last Update : 2013-05-14
6//
7// Description : Example 011 for TCPDF class
8// Colored Table (very simple table)
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: Colored Table
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// extend TCPF with custom functions
31class MYPDF extends TCPDF {
32
33 // Load table data from file
34 public function LoadData($file) {
35 // Read file lines
36 $lines = file($file);
37 $data = array();
38 foreach($lines as $line) {
39 $data[] = explode(';', chop($line));
40 }
41 return $data;
42 }
43
44 // Colored table
45 public function ColoredTable($header,$data) {
46 // Colors, line width and bold font
47 $this->SetFillColor(255, 0, 0);
48 $this->SetTextColor(255);
49 $this->SetDrawColor(128, 0, 0);
50 $this->SetLineWidth(0.3);
51 $this->SetFont('', 'B');
52 // Header
53 $w = array(40, 35, 40, 45);
54 $num_headers = count($header);
55 for($i = 0; $i < $num_headers; ++$i) {
56 $this->Cell($w[$i], 7, $header[$i], 1, 0, 'C', 1);
57 }
58 $this->Ln();
59 // Color and font restoration
60 $this->SetFillColor(224, 235, 255);
61 $this->SetTextColor(0);
62 $this->SetFont('');
63 // Data
64 $fill = 0;
65 foreach($data as $row) {
66 $this->Cell($w[0], 6, $row[0], 'LR', 0, 'L', $fill);
67 $this->Cell($w[1], 6, $row[1], 'LR', 0, 'L', $fill);
68 $this->Cell($w[2], 6, number_format($row[2]), 'LR', 0, 'R', $fill);
69 $this->Cell($w[3], 6, number_format($row[3]), 'LR', 0, 'R', $fill);
70 $this->Ln();
71 $fill=!$fill;
72 }
73 $this->Cell(array_sum($w), 0, '', 'T');
74 }
75}
76
77// create new PDF document
78$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
79
80// set document information
81$pdf->SetCreator(PDF_CREATOR);
82$pdf->SetAuthor('Nicola Asuni');
83$pdf->SetTitle('TCPDF Example 011');
84$pdf->SetSubject('TCPDF Tutorial');
85$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
86
87// set default header data
88$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 011', PDF_HEADER_STRING);
89
90// set header and footer fonts
91$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
92$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
93
94// set default monospaced font
95$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
96
97// set margins
98$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
99$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
100$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
101
102// set auto page breaks
103$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
104
105// set image scale factor
106$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
107
108// set some language-dependent strings (optional)
109if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
110 require_once(dirname(__FILE__).'/lang/eng.php');
111 $pdf->setLanguageArray($l);
112}
113
114// ---------------------------------------------------------
115
116// set font
117$pdf->SetFont('helvetica', '', 12);
118
119// add a page
120$pdf->AddPage();
121
122// column titles
123$header = array('Country', 'Capital', 'Area (sq km)', 'Pop. (thousands)');
124
125// data loading
126$data = $pdf->LoadData('data/table_data_demo.txt');
127
128// print colored table
129$pdf->ColoredTable($header, $data);
130
131// ---------------------------------------------------------
132
133// close and output PDF document
134$pdf->Output('example_011.pdf', 'I');
135
136//============================================================+
137// END OF FILE
138//============================================================+
Note: See TracBrowser for help on using the repository browser.