ILIAS  release_5-3 Revision v5.3.23-19-g915713cf615
example_050.php
Go to the documentation of this file.
1 <?php
2 //============================================================+
3 // File name : example_050.php
4 // Begin : 2009-04-09
5 // Last Update : 2013-05-14
6 //
7 // Description : Example 050 for TCPDF class
8 // 2D Barcodes
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 
27 // Include the main TCPDF library (search for installation path).
28 require_once('tcpdf_include.php');
29 
30 // create new PDF document
31 $pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
32 
33 // set document information
34 $pdf->SetCreator(PDF_CREATOR);
35 $pdf->SetAuthor('Nicola Asuni');
36 $pdf->SetTitle('TCPDF Example 050');
37 $pdf->SetSubject('TCPDF Tutorial');
38 $pdf->SetKeywords('TCPDF, PDF, example, test, guide');
39 
40 // set default header data
42 
43 // set header and footer fonts
44 $pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
45 $pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
46 
47 // set default monospaced font
48 $pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
49 
50 // set margins
52 $pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
53 $pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
54 
55 // set auto page breaks
56 $pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
57 
58 // set image scale factor
59 $pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
60 
61 // set some language-dependent strings (optional)
62 if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
63  require_once(dirname(__FILE__).'/lang/eng.php');
64  $pdf->setLanguageArray($l);
65 }
66 
67 // ---------------------------------------------------------
68 
69 // NOTE: 2D barcode algorithms must be implemented on 2dbarcode.php class file.
70 
71 // set font
72 $pdf->SetFont('helvetica', '', 11);
73 
74 // add a page
75 $pdf->AddPage();
76 
77 // print a message
78 $txt = "You can also export 2D barcodes in other formats (PNG, SVG, HTML). Check the examples inside the barcode directory.\n";
79 $pdf->MultiCell(70, 50, $txt, 0, 'J', false, 1, 125, 30, true, 0, false, true, 0, 'T', false);
80 
81 
82 $pdf->SetFont('helvetica', '', 10);
83 
84 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
85 
86 // set style for barcode
88  'border' => true,
89  'vpadding' => 'auto',
90  'hpadding' => 'auto',
91  'fgcolor' => array(0,0,0),
92  'bgcolor' => false, //array(255,255,255)
93  'module_width' => 1, // width of a single module in points
94  'module_height' => 1 // height of a single module in points
95 );
96 
97 // write RAW 2D Barcode
98 
99 $code = '111011101110111,010010001000010,010011001110010,010010000010010,010011101110010';
100 $pdf->write2DBarcode($code, 'RAW', 80, 30, 30, 20, $style, 'N');
101 
102 // write RAW2 2D Barcode
103 $code = '[111011101110111][010010001000010][010011001110010][010010000010010][010011101110010]';
104 $pdf->write2DBarcode($code, 'RAW2', 80, 60, 30, 20, $style, 'N');
105 
106 // - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
107 
108 // set style for barcode
109 $style = array(
110  'border' => 2,
111  'vpadding' => 'auto',
112  'hpadding' => 'auto',
113  'fgcolor' => array(0,0,0),
114  'bgcolor' => false, //array(255,255,255)
115  'module_width' => 1, // width of a single module in points
116  'module_height' => 1 // height of a single module in points
117 );
118 
119 // QRCODE,L : QR-CODE Low error correction
120 $pdf->write2DBarcode('www.tcpdf.org', 'QRCODE,L', 20, 30, 50, 50, $style, 'N');
121 $pdf->Text(20, 25, 'QRCODE L');
122 
123 // QRCODE,M : QR-CODE Medium error correction
124 $pdf->write2DBarcode('www.tcpdf.org', 'QRCODE,M', 20, 90, 50, 50, $style, 'N');
125 $pdf->Text(20, 85, 'QRCODE M');
126 
127 // QRCODE,Q : QR-CODE Better error correction
128 $pdf->write2DBarcode('www.tcpdf.org', 'QRCODE,Q', 20, 150, 50, 50, $style, 'N');
129 $pdf->Text(20, 145, 'QRCODE Q');
130 
131 // QRCODE,H : QR-CODE Best error correction
132 $pdf->write2DBarcode('www.tcpdf.org', 'QRCODE,H', 20, 210, 50, 50, $style, 'N');
133 $pdf->Text(20, 205, 'QRCODE H');
134 
135 // -------------------------------------------------------------------
136 // PDF417 (ISO/IEC 15438:2006)
137 
138 /*
139 
140  The $type parameter can be simple 'PDF417' or 'PDF417' followed by a
141  number of comma-separated options:
142 
143  'PDF417,a,e,t,s,f,o0,o1,o2,o3,o4,o5,o6'
144 
145  Possible options are:
146 
147  a = aspect ratio (width/height);
148  e = error correction level (0-8);
149 
150  Macro Control Block options:
151 
152  t = total number of macro segments;
153  s = macro segment index (0-99998);
154  f = file ID;
155  o0 = File Name (text);
156  o1 = Segment Count (numeric);
157  o2 = Time Stamp (numeric);
158  o3 = Sender (text);
159  o4 = Addressee (text);
160  o5 = File Size (numeric);
161  o6 = Checksum (numeric).
162 
163  Parameters t, s and f are required for a Macro Control Block, all other parametrs are optional.
164  To use a comma character ',' on text options, replace it with the character 255: "\xff".
165 
166 */
167 
168 $pdf->write2DBarcode('www.tcpdf.org', 'PDF417', 80, 90, 0, 30, $style, 'N');
169 $pdf->Text(80, 85, 'PDF417 (ISO/IEC 15438:2006)');
170 
171 // -------------------------------------------------------------------
172 // DATAMATRIX (ISO/IEC 16022:2006)
173 
174 $pdf->write2DBarcode('http://www.tcpdf.org', 'DATAMATRIX', 80, 150, 50, 50, $style, 'N');
175 $pdf->Text(80, 145, 'DATAMATRIX (ISO/IEC 16022:2006)');
176 
177 // -------------------------------------------------------------------
178 
179 // new style
180 $style = array(
181  'border' => 2,
182  'padding' => 'auto',
183  'fgcolor' => array(0,0,255),
184  'bgcolor' => array(255,255,64)
185 );
186 
187 // QRCODE,H : QR-CODE Best error correction
188 $pdf->write2DBarcode('www.tcpdf.org', 'QRCODE,H', 80, 210, 50, 50, $style, 'N');
189 $pdf->Text(80, 205, 'QRCODE H - COLORED');
190 
191 // new style
192 $style = array(
193  'border' => false,
194  'padding' => 0,
195  'fgcolor' => array(128,0,0),
196  'bgcolor' => false
197 );
198 
199 // QRCODE,H : QR-CODE Best error correction
200 $pdf->write2DBarcode('www.tcpdf.org', 'QRCODE,H', 140, 210, 50, 50, $style, 'N');
201 $pdf->Text(140, 205, 'QRCODE H - NO PADDING');
202 
203 // ---------------------------------------------------------
204 
205 //Close and output PDF document
206 $pdf->Output('example_050.pdf', 'I');
207 
208 //============================================================+
209 // END OF FILE
210 //============================================================+
const PDF_MARGIN_BOTTOM
Bottom margin.
const PDF_MARGIN_LEFT
Left margin.
$style
Definition: example_050.php:87
const PDF_MARGIN_HEADER
Header margin.
const PDF_HEADER_STRING
Header description string.
const PDF_FONT_SIZE_MAIN
Default main font size.
const PDF_FONT_SIZE_DATA
Default data font size.
$code
Definition: example_050.php:99
const PDF_FONT_NAME_MAIN
Default main font name.
$pdf
Definition: example_050.php:31
$txt
Definition: example_050.php:78
PHP class for generating PDF documents without requiring external extensions.
Definition: tcpdf.php:134
const PDF_HEADER_LOGO_WIDTH
Header logo image width in user units.
const PDF_HEADER_LOGO
Deafult image logo used be the default Header() method.
const PDF_UNIT
Document unit of measure [pt=point, mm=millimeter, cm=centimeter, in=inch].
const PDF_IMAGE_SCALE_RATIO
Ratio used to adjust the conversion of pixels to user units.
const PDF_PAGE_ORIENTATION
Page orientation (P=portrait, L=landscape).
Create styles array
The data for the language used.
const PDF_MARGIN_RIGHT
Right margin.
const PDF_HEADER_TITLE
Header title.
global $l
Definition: afr.php:30
const PDF_FONT_NAME_DATA
Default data font name.
const PDF_CREATOR
Document creator.
const PDF_PAGE_FORMAT
Page format.
const PDF_FONT_MONOSPACED
Default monospaced font name.
const PDF_MARGIN_TOP
Top margin.
const PDF_MARGIN_FOOTER
Footer margin.