root / drupal7 / sites / all / libraries / tcpdf-6.2.9 / examples / example_050.php @ 7295e063
1 | 85ad3d82 | Assos Assos | <?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 | |||
19 | /**
|
||
20 | * Creates an example PDF TEST document using TCPDF
|
||
21 | * @package com.tecnick.tcpdf
|
||
22 | * @abstract TCPDF - Example: 2D barcodes.
|
||
23 | * @author Nicola Asuni
|
||
24 | * @since 2008-03-04
|
||
25 | */
|
||
26 | |||
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
|
||
41 | $pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 050', PDF_HEADER_STRING); |
||
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
|
||
51 | $pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT); |
||
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
|
||
87 | $style = array( |
||
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 | //============================================================+ |