Blame | Last modification | View Log | RSS feed
<?php//============================================================+// File name : example_011.php// Begin : 2008-03-04// Last Update : 2010-08-08//// Description : Example 011 for TCPDF class// Colored Table//// Author: Nicola Asuni//// (c) Copyright:// Nicola Asuni// Tecnick.com s.r.l.// Via Della Pace, 11// 09044 Quartucciu (CA)// ITALY// www.tecnick.com// info@tecnick.com//============================================================+/*** Creates an example PDF TEST document using TCPDF* @package com.tecnick.tcpdf* @abstract TCPDF - Example: Colored Table* @author Nicola Asuni* @copyright 2004-2009 Nicola Asuni - Tecnick.com S.r.l (www.tecnick.com) Via Della Pace, 11 - 09044 - Quartucciu (CA) - ITALY - www.tecnick.com - info@tecnick.com* @link http://tcpdf.org* @license http://www.gnu.org/copyleft/lesser.html LGPL* @since 2008-03-04*/require_once('../config/lang/eng.php');require_once('../tcpdf.php');// extend TCPF with custom functionsclass MYPDF extends TCPDF {// Load table data from filepublic function LoadData($file) {// Read file lines$lines = file($file);$data = array();foreach($lines as $line) {$data[] = explode(';', chop($line));}return $data;}// Colored tablepublic function ColoredTable($header,$data) {// Colors, line width and bold font$this->SetFillColor(255, 0, 0);$this->SetTextColor(255);$this->SetDrawColor(128, 0, 0);$this->SetLineWidth(0.3);$this->SetFont('', 'B');// Header$w = array(40, 35, 40, 45);$num_headers = count($header);for($i = 0; $i < $num_headers; ++$i) {$this->Cell($w[$i], 7, $header[$i], 1, 0, 'C', 1);}$this->Ln();// Color and font restoration$this->SetFillColor(224, 235, 255);$this->SetTextColor(0);$this->SetFont('');// Data$fill = 0;foreach($data as $row) {$this->Cell($w[0], 6, $row[0], 'LR', 0, 'L', $fill);$this->Cell($w[1], 6, $row[1], 'LR', 0, 'L', $fill);$this->Cell($w[2], 6, number_format($row[2]), 'LR', 0, 'R', $fill);$this->Cell($w[3], 6, number_format($row[3]), 'LR', 0, 'R', $fill);$this->Ln();$fill=!$fill;}$this->Cell(array_sum($w), 0, '', 'T');}}// create new PDF document$pdf = new MYPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);// set document information$pdf->SetCreator(PDF_CREATOR);$pdf->SetAuthor('Nicola Asuni');$pdf->SetTitle('TCPDF Example 011');$pdf->SetSubject('TCPDF Tutorial');$pdf->SetKeywords('TCPDF, PDF, example, test, guide');// set default header data$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 011', PDF_HEADER_STRING);// set header and footer fonts$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));// set default monospaced font$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);//set margins$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);//set auto page breaks$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);//set image scale factor$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);//set some language-dependent strings$pdf->setLanguageArray($l);// ---------------------------------------------------------// set font$pdf->SetFont('helvetica', '', 12);// add a page$pdf->AddPage();//Column titles$header = array('Country', 'Capital', 'Area (sq km)', 'Pop. (thousands)');//Data loading$data = $pdf->LoadData('../cache/table_data_demo.txt');// print colored table$pdf->ColoredTable($header, $data);// ---------------------------------------------------------//Close and output PDF document$pdf->Output('example_011.pdf', 'I');//============================================================+// END OF FILE//============================================================+