source: trunk/client/inc/hpdf5/tecnickcom/tcpdf/examples/example_015.php@ 418

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

Aggiornamento per compatibilità con php7.4

File size: 5.5 KB
Line 
1<?php
2//============================================================+
3// File name : example_015.php
4// Begin : 2008-03-04
5// Last Update : 2013-05-14
6//
7// Description : Example 015 for TCPDF class
8// Bookmarks (Table of Content)
9// and Named Destinations.
10//
11// Author: Nicola Asuni
12//
13// (c) Copyright:
14// Nicola Asuni
15// Tecnick.com LTD
16// www.tecnick.com
17// info@tecnick.com
18//============================================================+
19
20/**
21 * Creates an example PDF TEST document using TCPDF
22 * @package com.tecnick.tcpdf
23 * @abstract TCPDF - Example: Bookmarks (Table of Content)
24 * @author Nicola Asuni
25 * @since 2008-03-04
26 */
27
28// Include the main TCPDF library (search for installation path).
29require_once('tcpdf_include.php');
30
31// create new PDF document
32$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
33
34// set document information
35$pdf->SetCreator(PDF_CREATOR);
36$pdf->SetAuthor('Nicola Asuni');
37$pdf->SetTitle('TCPDF Example 015');
38$pdf->SetSubject('TCPDF Tutorial');
39$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
40
41// set default header data
42$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 015', PDF_HEADER_STRING);
43
44// set header and footer fonts
45$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
46$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
47
48// set default monospaced font
49$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
50
51// set margins
52$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
53$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
54$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
55
56// set auto page breaks
57$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
58
59// set image scale factor
60$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
61
62// set some language-dependent strings (optional)
63if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
64 require_once(dirname(__FILE__).'/lang/eng.php');
65 $pdf->setLanguageArray($l);
66}
67
68// ---------------------------------------------------------
69
70// Bookmark($txt, $level=0, $y=-1, $page='', $style='', $color=array(0,0,0))
71
72// set font
73$pdf->SetFont('times', 'B', 20);
74
75// add a page
76$pdf->AddPage();
77
78// set a bookmark for the current position
79$pdf->Bookmark('Chapter 1', 0, 0, '', 'B', array(0,64,128));
80
81// print a line using Cell()
82$pdf->Cell(0, 10, 'Chapter 1', 0, 1, 'L');
83
84$pdf->SetFont('times', 'I', 14);
85$pdf->Write(0, 'You can set PDF Bookmarks using the Bookmark() method.
86You can set PDF Named Destinations using the setDestination() method.');
87
88$pdf->SetFont('times', 'B', 20);
89
90// add other pages and bookmarks
91
92$pdf->AddPage();
93$pdf->Bookmark('Paragraph 1.1', 1, 0, '', '', array(0,0,0));
94$pdf->Cell(0, 10, 'Paragraph 1.1', 0, 1, 'L');
95
96$pdf->AddPage();
97$pdf->Bookmark('Paragraph 1.2', 1, 0, '', '', array(0,0,0));
98$pdf->Cell(0, 10, 'Paragraph 1.2', 0, 1, 'L');
99
100$pdf->AddPage();
101$pdf->Bookmark('Sub-Paragraph 1.2.1', 2, 0, '', 'I', array(0,0,0));
102$pdf->Cell(0, 10, 'Sub-Paragraph 1.2.1', 0, 1, 'L');
103
104$pdf->AddPage();
105$pdf->Bookmark('Paragraph 1.3', 1, 0, '', '', array(0,0,0));
106$pdf->Cell(0, 10, 'Paragraph 1.3', 0, 1, 'L');
107
108$pdf->AddPage();
109// add a named destination so you can open this document at this page using the link: "example_015.pdf#chapter2"
110$pdf->setDestination('chapter2', 0, '');
111// add a bookmark that points to a named destination
112$pdf->Bookmark('Chapter 2', 0, 0, '', 'BI', array(128,0,0), -1, '#chapter2');
113$pdf->Cell(0, 10, 'Chapter 2', 0, 1, 'L');
114$pdf->SetFont('times', 'I', 14);
115$pdf->Write(0, 'Once saved, you can open this document at this page using the link: "example_015.pdf#chapter2".');
116
117$pdf->AddPage();
118$pdf->setDestination('chapter3', 0, '');
119$pdf->SetFont('times', 'B', 20);
120$pdf->Bookmark('Chapter 3', 0, 0, '', 'B', array(0,64,128));
121$pdf->Cell(0, 10, 'Chapter 3', 0, 1, 'L');
122
123$pdf->AddPage();
124$pdf->setDestination('chapter4', 0, '');
125$pdf->SetFont('times', 'B', 20);
126$pdf->Bookmark('Chapter 4', 0, 0, '', 'B', array(0,64,128));
127$pdf->Cell(0, 10, 'Chapter 4', 0, 1, 'L');
128
129$pdf->AddPage();
130$pdf->Bookmark('Chapter 5', 0, 0, '', 'B', array(0,128,0));
131$pdf->Cell(0, 10, 'Chapter 5', 0, 1, 'L');
132$txt = 'Example of File Attachment.
133Double click on the icon to open the attached file.';
134$pdf->SetFont('helvetica', '', 10);
135$pdf->Write(0, $txt, '', 0, 'L', true, 0, false, false, 0);
136
137// attach an external file TXT file
138$pdf->Annotation(20, 50, 5, 5, 'TXT file', array('Subtype'=>'FileAttachment', 'Name' => 'PushPin', 'FS' => 'data/utf8test.txt'));
139
140// attach an external file
141$pdf->Annotation(50, 50, 5, 5, 'PDF file', array('Subtype'=>'FileAttachment', 'Name' => 'PushPin', 'FS' => 'example_012.pdf'));
142
143// add a bookmark that points to an embedded file
144// NOTE: prefix the file name with the * character for generic file and with % character for PDF file
145$pdf->Bookmark('TXT file', 0, 0, '', 'B', array(128,0,255), -1, '*utf8test.txt');
146
147// add a bookmark that points to an embedded file
148// NOTE: prefix the file name with the * character for generic file and with % character for PDF file
149$pdf->Bookmark('PDF file', 0, 0, '', 'B', array(128,0,255), -1, '%example_012.pdf');
150
151// add a bookmark that points to an external URL
152$pdf->Bookmark('External URL', 0, 0, '', 'B', array(0,0,255), -1, 'http://www.tcpdf.org');
153
154// ---------------------------------------------------------
155
156//Close and output PDF document
157$pdf->Output('example_015.pdf', 'D');
158
159//============================================================+
160// END OF FILE
161//============================================================+
Note: See TracBrowser for help on using the repository browser.