ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
example_046.php
Go to the documentation of this file.
1 <?php
2 //============================================================+
3 // File name : example_046.php
4 // Begin : 2009-02-28
5 // Last Update : 2013-05-14
6 //
7 // Description : Example 046 for TCPDF class
8 // Text Hyphenation
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 046');
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 // set font
70 $pdf->SetFont('helvetica', 'B', 20);
71 
72 // add a page
73 $pdf->AddPage();
74 
75 $pdf->Write(0, 'Example of Text Hyphenation', '', 0, 'L', true, 0, false, false, 0);
76 
77 $pdf->Ln(10);
78 
79 /*
80 Unicode Data for SHY:
81  Name : SOFT HYPHEN, commonly abbreviated as SHY
82  HTML Entity (decimal): &#173;
83  HTML Entity (hex): &#xad;
84  HTML Entity (named): &shy;
85  How to type in Microsoft Windows: [Alt +00AD] or [Alt 0173]
86  UTF-8 (hex): 0xC2 0xAD (c2ad)
87 */
88 
89 /*
90 // You can automatically add SOFT HYPHENS to your text using
91 // the hyphenateText() method, but this requires either an
92 // hyphenation pattern array of a hyphenation pattern TEX file.
93 // You can download hyphenation TEX patterns from:
94 // http://www.ctan.org/tex-archive/language/hyph-utf8/tex/generic/hyph-utf8/patterns/
95 
96 // EXAMPLE:
97 
98 $html = 'On the other hand, we denounce with righteous indignation and dislike men who are so beguiled and demoralized by the charms of pleasure of the moment, so blinded by desire, that they cannot foresee the pain and trouble that are bound to ensue; and equal blame belongs to those who fail in their duty through weakness of will, which is the same as saying through shrinking from toil and pain. These cases are perfectly simple and easy to distinguish. In a free hour, when our power of choice is untrammelled and when nothing prevents our being able to do what we like best, every pleasure is to be welcomed and every pain avoided. But in certain circumstances and owing to the claims of duty or the obligations of business it will frequently occur that pleasures have to be repudiated and annoyances accepted. The wise man therefore always holds in these matters to this principle of selection: he rejects pleasures to secure other greater pleasures, or else he endures pains to avoid worse pains.';
99 
100 $hyphen_patterns = $pdf->getHyphenPatternsFromTEX('hyphens/hyph-en-gb.tex');
101 
102 $html = $pdf->hyphenateText($html, $hyphen_patterns, array(), 1, 2, 1, 8);
103 */
104 
105 
106 // HTML text with soft hyphens (&shy;)
107 $html = 'On the other hand, we de&shy;nounce with righ&shy;teous in&shy;dig&shy;na&shy;tion and dis&shy;like men who are so be&shy;guiled and de&shy;mo&shy;r&shy;al&shy;ized by the charms of plea&shy;sure of the mo&shy;ment, so blind&shy;ed by de&shy;sire, that they can&shy;not fore&shy;see the pain and trou&shy;ble that are bound to en&shy;sue; and equal blame be&shy;longs to those who fail in their du&shy;ty through weak&shy;ness of will, which is the same as say&shy;ing through shrink&shy;ing from toil and pain. Th&shy;ese cas&shy;es are per&shy;fect&shy;ly sim&shy;ple and easy to distin&shy;guish. In a free hour, when our pow&shy;er of choice is un&shy;tram&shy;melled and when noth&shy;ing pre&shy;vents our be&shy;ing able to do what we like best, ev&shy;ery plea&shy;sure is to be wel&shy;comed and ev&shy;ery pain avoid&shy;ed. But in cer&shy;tain cir&shy;cum&shy;s&shy;tances and ow&shy;ing to the claims of du&shy;ty or the obli&shy;ga&shy;tions of busi&shy;ness it will fre&shy;quent&shy;ly oc&shy;cur that plea&shy;sures have to be re&shy;pu&shy;di&shy;at&shy;ed and an&shy;noy&shy;ances ac&shy;cept&shy;ed. The wise man there&shy;fore al&shy;ways holds in th&shy;ese mat&shy;ters to this prin&shy;ci&shy;ple of se&shy;lec&shy;tion: he re&shy;jects plea&shy;sures to se&shy;cure other greater plea&shy;sures, or else he en&shy;dures pains to avoid worse pains.';
108 
109 $pdf->SetFont('times', '', 10);
110 $pdf->SetDrawColor(255,0,0);
111 $pdf->SetTextColor(0,63,127);
112 
113 // print a cell
114 $pdf->writeHTMLCell(50, 0, '', '', $html, 1, 1, 0, true, 'J');
115 
116 // ---------------------------------------------------------
117 
118 //Close and output PDF document
119 $pdf->Output('example_046.pdf', 'I');
120 
121 //============================================================+
122 // END OF FILE
123 //============================================================+
$pdf
Definition: example_046.php:31
const PDF_MARGIN_BOTTOM
Bottom margin.
const PDF_MARGIN_LEFT
Left margin.
const PDF_MARGIN_HEADER
Header margin.
$html
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.
const PDF_FONT_NAME_MAIN
Default main font name.
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).
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.