30
1
mirror of https://github.com/vdm-io/tcpdf.git synced 2024-05-31 21:30:47 +00:00
This commit is contained in:
nicolaasuni 2009-03-27 12:06:18 +01:00
parent 342de0004d
commit 1693a83fcd
17 changed files with 215 additions and 167 deletions

View File

@ -1,3 +1,6 @@
4.5.033 (2009-03-27)
- The support for rowspan/colspan on HTML tables was improved (see example n. 48).
4.5.032 (2009-03-23) 4.5.032 (2009-03-23)
- setPrintFooter(false) bug was fixed. - setPrintFooter(false) bug was fixed.

View File

@ -8,8 +8,8 @@ http://sourceforge.net/donate/index.php?group_id=128076
------------------------------------------------------------ ------------------------------------------------------------
Name: TCPDF Name: TCPDF
Version: 4.5.032 Version: 4.5.033
Release date: 2009-03-23 Release date: 2009-03-27
Author: Nicola Asuni Author: Nicola Asuni
Copyright (c) 2001-2009: Copyright (c) 2001-2009:

View File

@ -45,7 +45,7 @@
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -74,7 +74,7 @@ Source Location: /tcpdf.php<br /><br />
<h4>Version:</h4> <h4>Version:</h4>
<ul> <ul>
<li>4.5.032</li> <li>4.5.033</li>
</ul> </ul>
@ -574,7 +574,7 @@ This is a PHP class for generating PDF documents without requiring external exte
<td><b>author:</b>&nbsp;&nbsp;</td><td>Nicola Asuni - info@tecnick.com</td> <td><b>author:</b>&nbsp;&nbsp;</td><td>Nicola Asuni - info@tecnick.com</td>
</tr> </tr>
<tr> <tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>4.5.032</td> <td><b>version:</b>&nbsp;&nbsp;</td><td>4.5.033</td>
</tr> </tr>
<tr> <tr>
<td><b>link:</b>&nbsp;&nbsp;</td><td><a href="http://www.tcpdf.org">http://www.tcpdf.org</a></td> <td><b>link:</b>&nbsp;&nbsp;</td><td><a href="http://www.tcpdf.org">http://www.tcpdf.org</a></td>
@ -5309,7 +5309,7 @@ $style = -1])</code>
</div> </div>
<hr /> <hr />
<a name="methodaddHTMLVertSpace"></a> <a name="methodaddHTMLVertSpace"></a>
<h3>method addHTMLVertSpace <span class="smalllinenumber">[line 12167]</span></h3> <h3>method addHTMLVertSpace <span class="smalllinenumber">[line 12176]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -5520,7 +5520,7 @@ $k)</code>
</div> </div>
<hr /> <hr />
<a name="methodaddTOC"></a> <a name="methodaddTOC"></a>
<h3>method addTOC <span class="smalllinenumber">[line 13049]</span></h3> <h3>method addTOC <span class="smalllinenumber">[line 13058]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -6304,7 +6304,7 @@ $h)</code>
</div> </div>
<hr /> <hr />
<a name="methodcloseHTMLTagHandler"></a> <a name="methodcloseHTMLTagHandler"></a>
<h3>method closeHTMLTagHandler <span class="smalllinenumber">[line 11852]</span></h3> <h3>method closeHTMLTagHandler <span class="smalllinenumber">[line 11854]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -6418,7 +6418,7 @@ $prop = array()])</code>
</div> </div>
<hr /> <hr />
<a name="methodcommitTransaction"></a> <a name="methodcommitTransaction"></a>
<h3>method commitTransaction <span class="smalllinenumber">[line 13206]</span></h3> <h3>method commitTransaction <span class="smalllinenumber">[line 13215]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -7265,7 +7265,7 @@ $pagenum = ''])</code>
</div> </div>
<hr /> <hr />
<a name="methodgetBuffer"></a> <a name="methodgetBuffer"></a>
<h3>method getBuffer <span class="smalllinenumber">[line 12732]</span></h3> <h3>method getBuffer <span class="smalllinenumber">[line 12741]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -7456,7 +7456,7 @@ $char)</code>
</div> </div>
<hr /> <hr />
<a name="methodgetFontBuffer"></a> <a name="methodgetFontBuffer"></a>
<h3>method getFontBuffer <span class="smalllinenumber">[line 12892]</span></h3> <h3>method getFontBuffer <span class="smalllinenumber">[line 12901]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -7745,7 +7745,7 @@ $v)</code>
</div> </div>
<hr /> <hr />
<a name="methodgetGraphicVars"></a> <a name="methodgetGraphicVars"></a>
<h3>method getGraphicVars <span class="smalllinenumber">[line 12600]</span></h3> <h3>method getGraphicVars <span class="smalllinenumber">[line 12609]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -7955,7 +7955,7 @@ $html)</code>
</div> </div>
<hr /> <hr />
<a name="methodgetHTMLUnitToUnits"></a> <a name="methodgetHTMLUnitToUnits"></a>
<h3>method getHTMLUnitToUnits <span class="smalllinenumber">[line 12322]</span></h3> <h3>method getHTMLUnitToUnits <span class="smalllinenumber">[line 12331]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -8021,7 +8021,7 @@ $point)</code>
</div> </div>
<hr /> <hr />
<a name="methodgetImageBuffer"></a> <a name="methodgetImageBuffer"></a>
<h3>method getImageBuffer <span class="smalllinenumber">[line 12834]</span></h3> <h3>method getImageBuffer <span class="smalllinenumber">[line 12843]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -8367,7 +8367,7 @@ $w = 0])</code>
</div> </div>
<hr /> <hr />
<a name="methodgetObjFilename"></a> <a name="methodgetObjFilename"></a>
<h3>method getObjFilename <span class="smalllinenumber">[line 12664]</span></h3> <h3>method getObjFilename <span class="smalllinenumber">[line 12673]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -8477,7 +8477,7 @@ $prefix)</code>
</div> </div>
<hr /> <hr />
<a name="methodgetPageBuffer"></a> <a name="methodgetPageBuffer"></a>
<h3>method getPageBuffer <span class="smalllinenumber">[line 12775]</span></h3> <h3>method getPageBuffer <span class="smalllinenumber">[line 12784]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -9392,7 +9392,7 @@ $script)</code>
</div> </div>
<hr /> <hr />
<a name="methodintToRoman"></a> <a name="methodintToRoman"></a>
<h3>method intToRoman <span class="smalllinenumber">[line 12393]</span></h3> <h3>method intToRoman <span class="smalllinenumber">[line 12402]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -9986,7 +9986,7 @@ $y = ''])</code>
</div> </div>
<hr /> <hr />
<a name="methodmovePage"></a> <a name="methodmovePage"></a>
<h3>method movePage <span class="smalllinenumber">[line 12910]</span></h3> <h3>method movePage <span class="smalllinenumber">[line 12919]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -10160,7 +10160,7 @@ $maxh = 0])</code>
</div> </div>
<hr /> <hr />
<a name="methodobjclone"></a> <a name="methodobjclone"></a>
<h3>method objclone <span class="smalllinenumber">[line 13241]</span></h3> <h3>method objclone <span class="smalllinenumber">[line 13250]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -10233,7 +10233,7 @@ $object)</code>
</div> </div>
<hr /> <hr />
<a name="methodopenHTMLTagHandler"></a> <a name="methodopenHTMLTagHandler"></a>
<h3>method openHTMLTagHandler <span class="smalllinenumber">[line 11551]</span></h3> <h3>method openHTMLTagHandler <span class="smalllinenumber">[line 11553]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -10670,7 +10670,7 @@ $fill_color = array()])</code>
</div> </div>
<hr /> <hr />
<a name="methodputHtmlListBullet"></a> <a name="methodputHtmlListBullet"></a>
<h3>method putHtmlListBullet <span class="smalllinenumber">[line 12458]</span></h3> <h3>method putHtmlListBullet <span class="smalllinenumber">[line 12467]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -10847,7 +10847,7 @@ $prop = array()])</code>
</div> </div>
<hr /> <hr />
<a name="methodreadDiskCache"></a> <a name="methodreadDiskCache"></a>
<h3>method readDiskCache <span class="smalllinenumber">[line 12704]</span></h3> <h3>method readDiskCache <span class="smalllinenumber">[line 12713]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -11174,7 +11174,7 @@ $length)</code>
</div> </div>
<hr /> <hr />
<a name="methodrollbackTransaction"></a> <a name="methodrollbackTransaction"></a>
<h3>method rollbackTransaction <span class="smalllinenumber">[line 13219]</span></h3> <h3>method rollbackTransaction <span class="smalllinenumber">[line 13228]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -11744,7 +11744,7 @@ $bc = ''])</code>
</div> </div>
<hr /> <hr />
<a name="methodSetBooklet"></a> <a name="methodSetBooklet"></a>
<h3>method SetBooklet <span class="smalllinenumber">[line 12236]</span></h3> <h3>method SetBooklet <span class="smalllinenumber">[line 12245]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -11795,7 +11795,7 @@ $outer = -1])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetBuffer"></a> <a name="methodsetBuffer"></a>
<h3>method setBuffer <span class="smalllinenumber">[line 12714]</span></h3> <h3>method setBuffer <span class="smalllinenumber">[line 12723]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -12515,7 +12515,7 @@ $fontfile = ''])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetFontBuffer"></a> <a name="methodsetFontBuffer"></a>
<h3>method setFontBuffer <span class="smalllinenumber">[line 12850]</span></h3> <h3>method setFontBuffer <span class="smalllinenumber">[line 12859]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -12602,7 +12602,7 @@ $size)</code>
</div> </div>
<hr /> <hr />
<a name="methodsetFontSubBuffer"></a> <a name="methodsetFontSubBuffer"></a>
<h3>method setFontSubBuffer <span class="smalllinenumber">[line 12872]</span></h3> <h3>method setFontSubBuffer <span class="smalllinenumber">[line 12881]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -12756,7 +12756,7 @@ $fm = 10])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetGraphicVars"></a> <a name="methodsetGraphicVars"></a>
<h3>method setGraphicVars <span class="smalllinenumber">[line 12631]</span></h3> <h3>method setGraphicVars <span class="smalllinenumber">[line 12640]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -12952,7 +12952,7 @@ $hm = 10])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetHtmlLinksStyle"></a> <a name="methodsetHtmlLinksStyle"></a>
<h3>method setHtmlLinksStyle <span class="smalllinenumber">[line 12307]</span></h3> <h3>method setHtmlLinksStyle <span class="smalllinenumber">[line 12316]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -12997,7 +12997,7 @@ $fontstyle = 'U'])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetHtmlVSpace"></a> <a name="methodsetHtmlVSpace"></a>
<h3>method setHtmlVSpace <span class="smalllinenumber">[line 12276]</span></h3> <h3>method setHtmlVSpace <span class="smalllinenumber">[line 12285]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -13036,7 +13036,7 @@ $tagvs)</code>
</div> </div>
<hr /> <hr />
<a name="methodsetImageBuffer"></a> <a name="methodsetImageBuffer"></a>
<h3>method setImageBuffer <span class="smalllinenumber">[line 12791]</span></h3> <h3>method setImageBuffer <span class="smalllinenumber">[line 12800]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -13123,7 +13123,7 @@ $scale)</code>
</div> </div>
<hr /> <hr />
<a name="methodsetImageSubBuffer"></a> <a name="methodsetImageSubBuffer"></a>
<h3>method setImageSubBuffer <span class="smalllinenumber">[line 12814]</span></h3> <h3>method setImageSubBuffer <span class="smalllinenumber">[line 12823]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -13517,7 +13517,7 @@ $page = -1])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetListIndentWidth"></a> <a name="methodsetListIndentWidth"></a>
<h3>method setListIndentWidth <span class="smalllinenumber">[line 12286]</span></h3> <h3>method setListIndentWidth <span class="smalllinenumber">[line 12295]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -13556,7 +13556,7 @@ $width)</code>
</div> </div>
<hr /> <hr />
<a name="methodsetLIsymbol"></a> <a name="methodsetLIsymbol"></a>
<h3>method setLIsymbol <span class="smalllinenumber">[line 12196]</span></h3> <h3>method setLIsymbol <span class="smalllinenumber">[line 12205]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -13649,7 +13649,7 @@ $right = -1])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetOpenCell"></a> <a name="methodsetOpenCell"></a>
<h3>method setOpenCell <span class="smalllinenumber">[line 12296]</span></h3> <h3>method setOpenCell <span class="smalllinenumber">[line 12305]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -13736,7 +13736,7 @@ $resetmargins = false])</code>
</div> </div>
<hr /> <hr />
<a name="methodsetPageBuffer"></a> <a name="methodsetPageBuffer"></a>
<h3>method setPageBuffer <span class="smalllinenumber">[line 12748]</span></h3> <h3>method setPageBuffer <span class="smalllinenumber">[line 12757]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -15188,7 +15188,7 @@ $page = ''])</code>
</div> </div>
<hr /> <hr />
<a name="methodstartTransaction"></a> <a name="methodstartTransaction"></a>
<h3>method startTransaction <span class="smalllinenumber">[line 13192]</span></h3> <h3>method startTransaction <span class="smalllinenumber">[line 13201]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -15278,7 +15278,7 @@ $page = ''])</code>
</div> </div>
<hr /> <hr />
<a name="methodswapMargins"></a> <a name="methodswapMargins"></a>
<h3>method swapMargins <span class="smalllinenumber">[line 12252]</span></h3> <h3>method swapMargins <span class="smalllinenumber">[line 12261]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -16286,7 +16286,7 @@ $code)</code>
</div> </div>
<hr /> <hr />
<a name="methodwriteDiskCache"></a> <a name="methodwriteDiskCache"></a>
<h3>method writeDiskCache <span class="smalllinenumber">[line 12676]</span></h3> <h3>method writeDiskCache <span class="smalllinenumber">[line 12685]</span></h3>
<div class="function"> <div class="function">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
@ -18574,7 +18574,7 @@ $file)</code>
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:17 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:06 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -640,7 +640,7 @@ $type)</code>
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -96,7 +96,7 @@ PHP class to creates array representations for common 1D barcodes to be used wit
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -507,7 +507,7 @@ Configuration file for TCPDF.<br /><br /><br /><br />
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:22 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:11 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -88,7 +88,7 @@ Array of WEB safe colors.<br /><br /><br /><br />
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:17 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:06 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -73,7 +73,7 @@ This is a PHP class for generating PDF documents without requiring external exte
<td><b>author:</b>&nbsp;&nbsp;</td><td>Nicola Asuni</td> <td><b>author:</b>&nbsp;&nbsp;</td><td>Nicola Asuni</td>
</tr> </tr>
<tr> <tr>
<td><b>version:</b>&nbsp;&nbsp;</td><td>4.5.032</td> <td><b>version:</b>&nbsp;&nbsp;</td><td>4.5.033</td>
</tr> </tr>
<tr> <tr>
<td><b>copyright:</b>&nbsp;&nbsp;</td><td>2002-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</td> <td><b>copyright:</b>&nbsp;&nbsp;</td><td>2002-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</td>
@ -104,7 +104,7 @@ unicode data<br /><br /></div>
<div class="tags"> <div class="tags">
<table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border"> <table width="90%" border="0" cellspacing="0" cellpadding="1"><tr><td class="code_border">
<table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code"> <table width="100%" border="0" cellspacing="0" cellpadding="2"><tr><td class="code">
<code>PDF_PRODUCER = 'TCPDF 4.5.032 (http://www.tcpdf.org)'</code> <code>PDF_PRODUCER = 'TCPDF 4.5.033 (http://www.tcpdf.org)'</code>
</td></tr></table> </td></tr></table>
</td></tr></table> </td></tr></table>
@ -115,7 +115,7 @@ unicode data<br /><br /></div>
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:17 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:06 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -237,7 +237,7 @@ Unicode Include file for TCPDF.<br /><br /><br /><br />
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:22 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:11 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -1302,7 +1302,7 @@
<a href="elementindex.html#top">top</a><br> <a href="elementindex.html#top">top</a><br>
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -1325,7 +1325,7 @@
<a href="elementindex_com-tecnick-tcpdf.html#top">top</a><br> <a href="elementindex_com-tecnick-tcpdf.html#top">top</a><br>
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -35,7 +35,7 @@
<a href="#Post-parsing">Post-parsing</a><br> <a href="#Post-parsing">Post-parsing</a><br>
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:22 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:11 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -58,7 +58,7 @@
This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.1</a><br /> This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.1</a><br />
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -58,7 +58,7 @@
This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.1</a><br /> This documentation was generated by <a href="http://www.phpdoc.org">phpDocumentor v1.4.1</a><br />
<div class="credit"> <div class="credit">
<hr /> <hr />
Documentation generated on Mon, 23 Mar 2009 12:15:16 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a> Documentation generated on Fri, 27 Mar 2009 12:06:05 +0100 by <a href="http://www.phpdoc.org">phpDocumentor 1.4.1</a>
</div> </div>
</td></tr></table> </td></tr></table>
</td> </td>

View File

@ -2,7 +2,7 @@
//============================================================+ //============================================================+
// File name : example_048.php // File name : example_048.php
// Begin : 2009-03-20 // Begin : 2009-03-20
// Last Update : 2009-03-20 // Last Update : 2009-03-27
// //
// Description : Example 048 for TCPDF class // Description : Example 048 for TCPDF class
// HTML tables and table headers // HTML tables and table headers
@ -141,7 +141,42 @@ EOD;
$pdf->writeHTML($tbl, true, false, false, false, ''); $pdf->writeHTML($tbl, true, false, false, false, '');
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------
$tbl = <<<EOD
<table border="1">
<tr>
<th rowspan="3">Left column</th>
<th colspan="5">Heading Column Span 5</th>
<th colspan="9">Heading Column Span 9</th>
</tr>
<tr>
<th rowspan="2">Rowspan 2<br />This is some text that fills the table cell.</th>
<th colspan="2">span 2</th>
<th colspan="2">span 2</th>
<th rowspan="2">2 rows</th>
<th colspan="8">Colspan 8</th>
</tr>
<tr>
<th>1a</th>
<th>2a</th>
<th>1b</th>
<th>2b</th>
<th>1</th>
<th>2</th>
<th>3</th>
<th>4</th>
<th>5</th>
<th>6</th>
<th>7</th>
<th>8</th>
</tr>
</table>
EOD;
$pdf->writeHTML($tbl, true, false, false, false, '');
// -----------------------------------------------------------------------------
// Table with rowspans and THEAD // Table with rowspans and THEAD
$tbl = <<<EOD $tbl = <<<EOD
@ -205,7 +240,8 @@ $tbl = <<<EOD
</table> </table>
EOD; EOD;
$pdf->Ln(105); $pdf->writeHTML($tbl, true, false, false, false, '');
$pdf->writeHTML($tbl, true, false, false, false, ''); $pdf->writeHTML($tbl, true, false, false, false, '');
// ----------------------------------------------------------------------------- // -----------------------------------------------------------------------------

231
tcpdf.php
View File

@ -2,9 +2,9 @@
//============================================================+ //============================================================+
// File name : tcpdf.php // File name : tcpdf.php
// Begin : 2002-08-03 // Begin : 2002-08-03
// Last Update : 2009-03-23 // Last Update : 2009-03-27
// Author : Nicola Asuni - info@tecnick.com - http://www.tcpdf.org // Author : Nicola Asuni - info@tecnick.com - http://www.tcpdf.org
// Version : 4.5.032 // Version : 4.5.033
// License : GNU LGPL (http://www.gnu.org/copyleft/lesser.html) // License : GNU LGPL (http://www.gnu.org/copyleft/lesser.html)
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
// Copyright (C) 2002-2009 Nicola Asuni - Tecnick.com S.r.l. // Copyright (C) 2002-2009 Nicola Asuni - Tecnick.com S.r.l.
@ -122,7 +122,7 @@
* @copyright 2002-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 * @copyright 2002-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://www.tcpdf.org * @link http://www.tcpdf.org
* @license http://www.gnu.org/copyleft/lesser.html LGPL * @license http://www.gnu.org/copyleft/lesser.html LGPL
* @version 4.5.032 * @version 4.5.033
*/ */
/** /**
@ -146,14 +146,14 @@ if (!class_exists('TCPDF', false)) {
/** /**
* define default PDF document producer * define default PDF document producer
*/ */
define('PDF_PRODUCER', 'TCPDF 4.5.032 (http://www.tcpdf.org)'); define('PDF_PRODUCER', 'TCPDF 4.5.033 (http://www.tcpdf.org)');
/** /**
* This is a PHP class for generating PDF documents without requiring external extensions.<br> * This is a PHP class for generating PDF documents without requiring external extensions.<br>
* TCPDF project (http://www.tcpdf.org) has been originally derived in 2002 from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org), but now is almost entirely rewritten.<br> * TCPDF project (http://www.tcpdf.org) has been originally derived in 2002 from the Public Domain FPDF class by Olivier Plathey (http://www.fpdf.org), but now is almost entirely rewritten.<br>
* @name TCPDF * @name TCPDF
* @package com.tecnick.tcpdf * @package com.tecnick.tcpdf
* @version 4.5.032 * @version 4.5.033
* @author Nicola Asuni - info@tecnick.com * @author Nicola Asuni - info@tecnick.com
* @link http://www.tcpdf.org * @link http://www.tcpdf.org
* @license http://www.gnu.org/copyleft/lesser.html LGPL * @license http://www.gnu.org/copyleft/lesser.html LGPL
@ -286,7 +286,7 @@ if (!class_exists('TCPDF', false)) {
* @var cell internal padding * @var cell internal padding
* @access protected * @access protected
*/ */
//protected //protected
public $cMargin; public $cMargin;
/** /**
@ -1106,21 +1106,21 @@ if (!class_exists('TCPDF', false)) {
* @since 4.2.010 (2008-11-14) * @since 4.2.010 (2008-11-14)
*/ */
protected $opencell = true; protected $opencell = true;
/** /**
* @var array of files to embedd * @var array of files to embedd
* @access protected * @access protected
* @since 4.4.000 (2008-12-07) * @since 4.4.000 (2008-12-07)
*/ */
protected $embeddedfiles = array(); protected $embeddedfiles = array();
/** /**
* @var boolean true when inside html pre tag * @var boolean true when inside html pre tag
* @access protected * @access protected
* @since 4.4.001 (2008-12-08) * @since 4.4.001 (2008-12-08)
*/ */
protected $premode = false; protected $premode = false;
/** /**
* Array used to store positions of graphics transformation blocks inside the page buffer. * Array used to store positions of graphics transformation blocks inside the page buffer.
* keys are the page numbers * keys are the page numbers
@ -1128,77 +1128,77 @@ if (!class_exists('TCPDF', false)) {
* @since 4.4.002 (2008-12-09) * @since 4.4.002 (2008-12-09)
*/ */
protected $transfmrk = array(); protected $transfmrk = array();
/** /**
* Default color for html links * Default color for html links
* @access protected * @access protected
* @since 4.4.003 (2008-12-09) * @since 4.4.003 (2008-12-09)
*/ */
protected $htmlLinkColorArray = array(0, 0, 255); protected $htmlLinkColorArray = array(0, 0, 255);
/** /**
* Default font style to add to html links * Default font style to add to html links
* @access protected * @access protected
* @since 4.4.003 (2008-12-09) * @since 4.4.003 (2008-12-09)
*/ */
protected $htmlLinkFontStyle = 'U'; protected $htmlLinkFontStyle = 'U';
/** /**
* Counts the number of pages. * Counts the number of pages.
* @access protected * @access protected
* @since 4.5.000 (2008-12-31) * @since 4.5.000 (2008-12-31)
*/ */
protected $numpages = 0; protected $numpages = 0;
/** /**
* Array containing page lenghts in bytes. * Array containing page lenghts in bytes.
* @access protected * @access protected
* @since 4.5.000 (2008-12-31) * @since 4.5.000 (2008-12-31)
*/ */
protected $pagelen = array(); protected $pagelen = array();
/** /**
* Counts the number of pages. * Counts the number of pages.
* @access protected * @access protected
* @since 4.5.000 (2008-12-31) * @since 4.5.000 (2008-12-31)
*/ */
protected $numimages = 0; protected $numimages = 0;
/** /**
* Store the image keys. * Store the image keys.
* @access protected * @access protected
* @since 4.5.000 (2008-12-31) * @since 4.5.000 (2008-12-31)
*/ */
protected $imagekeys = array(); protected $imagekeys = array();
/** /**
* Lenght of the buffer in bytes. * Lenght of the buffer in bytes.
* @access protected * @access protected
* @since 4.5.000 (2008-12-31) * @since 4.5.000 (2008-12-31)
*/ */
protected $bufferlen = 0; protected $bufferlen = 0;
/** /**
* If true enables disk caching. * If true enables disk caching.
* @access protected * @access protected
* @since 4.5.000 (2008-12-31) * @since 4.5.000 (2008-12-31)
*/ */
protected $diskcache = false; protected $diskcache = false;
/** /**
* Counts the number of fonts. * Counts the number of fonts.
* @access protected * @access protected
* @since 4.5.000 (2009-01-02) * @since 4.5.000 (2009-01-02)
*/ */
protected $numfonts = 0; protected $numfonts = 0;
/** /**
* Store the font keys. * Store the font keys.
* @access protected * @access protected
* @since 4.5.000 (2009-01-02) * @since 4.5.000 (2009-01-02)
*/ */
protected $fontkeys = array(); protected $fontkeys = array();
/** /**
* Store the fage status (true when opened, false when closed). * Store the fage status (true when opened, false when closed).
* @access protected * @access protected
@ -1212,28 +1212,28 @@ if (!class_exists('TCPDF', false)) {
* @since 4.5.025 (2009-03-10) * @since 4.5.025 (2009-03-10)
*/ */
protected $default_monospaced_font = 'courier'; protected $default_monospaced_font = 'courier';
/** /**
* Used to store a cloned copy of the current class object * Used to store a cloned copy of the current class object
* @access protected * @access protected
* @since 4.5.029 (2009-03-19) * @since 4.5.029 (2009-03-19)
*/ */
protected $objcopy; protected $objcopy;
/** /**
* Array used to store the lenghts of cache files * Array used to store the lenghts of cache files
* @access protected * @access protected
* @since 4.5.029 (2009-03-19) * @since 4.5.029 (2009-03-19)
*/ */
protected $cache_file_lenght = array(); protected $cache_file_lenght = array();
/** /**
* Table header content to be repeated on each new page * Table header content to be repeated on each new page
* @access protected * @access protected
* @since 4.5.030 (2009-03-20) * @since 4.5.030 (2009-03-20)
*/ */
protected $thead = ''; protected $thead = '';
/** /**
* Distance between the top of page and end of table headers on a new page. * Distance between the top of page and end of table headers on a new page.
* @access protected * @access protected
@ -2079,7 +2079,7 @@ if (!class_exists('TCPDF', false)) {
// start new page // start new page
$this->startPage($orientation, $format); $this->startPage($orientation, $format);
} }
/** /**
* Terminate the current page * Terminate the current page
* @access protected * @access protected
@ -2100,7 +2100,7 @@ if (!class_exists('TCPDF', false)) {
$this->pageopen[$this->page] = false; $this->pageopen[$this->page] = false;
$this->InFooter = false; $this->InFooter = false;
} }
/** /**
* Starts a new page to the document. The page must be closed using the endPage() function. * Starts a new page to the document. The page must be closed using the endPage() function.
* The origin of the coordinate system is at the top-left corner and increasing ordinates go downwards. * The origin of the coordinate system is at the top-left corner and increasing ordinates go downwards.
@ -2409,7 +2409,7 @@ if (!class_exists('TCPDF', false)) {
// calculate footer lenght // calculate footer lenght
$this->footerlen[$this->page] = $this->pagelen[$this->page] - $this->footerpos[$this->page]; $this->footerlen[$this->page] = $this->pagelen[$this->page] - $this->footerpos[$this->page];
} }
/** /**
* This method is used to render the table header on new page (if any). * This method is used to render the table header on new page (if any).
* @access protected * @access protected
@ -3028,7 +3028,7 @@ if (!class_exists('TCPDF', false)) {
$this->_out(sprintf('BT /F%d %.2F Tf ET', $this->CurrentFont['i'], $this->FontSizePt)); $this->_out(sprintf('BT /F%d %.2F Tf ET', $this->CurrentFont['i'], $this->FontSizePt));
} }
} }
/** /**
* Defines the default monospaced font. * Defines the default monospaced font.
* @param string $font Font name. * @param string $font Font name.
@ -3148,7 +3148,7 @@ if (!class_exists('TCPDF', false)) {
$this->embeddedfiles[basename($opt['FS'])] = array('file' => $opt['FS'], 'n' => ($this->n + count($this->embeddedfiles) + 10000)); $this->embeddedfiles[basename($opt['FS'])] = array('file' => $opt['FS'], 'n' => ($this->n + count($this->embeddedfiles) + 10000));
} }
} }
/** /**
* Embedd the attached files. * Embedd the attached files.
* @since 4.4.000 (2008-12-07) * @since 4.4.000 (2008-12-07)
@ -3173,7 +3173,7 @@ if (!class_exists('TCPDF', false)) {
} }
/** /**
* Prints a character string. * Prints a character string.
* The origin is on the left of the first charcter, on the baseline. * The origin is on the left of the first charcter, on the baseline.
* This method allows to place a string precisely on the page. * This method allows to place a string precisely on the page.
* @param float $x Abscissa of the origin * @param float $x Abscissa of the origin
@ -3288,7 +3288,7 @@ if (!class_exists('TCPDF', false)) {
$this->checkPageBreak($h); $this->checkPageBreak($h);
$this->_out($this->getCellCode($w, $h, $txt, $border, $ln, $align, $fill, $link, $stretch)); $this->_out($this->getCellCode($w, $h, $txt, $border, $ln, $align, $fill, $link, $stretch));
} }
/** /**
* Removes SHY characters from text. * Removes SHY characters from text.
* @param string $txt input string * @param string $txt input string
@ -3710,7 +3710,7 @@ if (!class_exists('TCPDF', false)) {
} }
return $nl; return $nl;
} }
/** /**
* Get the border mode accounting for multicell position (opens bottom side of multicell crossing pages) * Get the border mode accounting for multicell position (opens bottom side of multicell crossing pages)
* @param mixed $border Indicates if borders must be drawn around the cell block. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul> * @param mixed $border Indicates if borders must be drawn around the cell block. The value can be either a number:<ul><li>0: no border (default)</li><li>1: frame</li></ul>or a string containing some or all of the following characters (in any order):<ul><li>L: left</li><li>T: top</li><li>R: right</li><li>B: bottom</li></ul>
@ -3787,9 +3787,9 @@ if (!class_exists('TCPDF', false)) {
break; break;
} }
} }
return $cborder; return $cborder;
} }
/** /**
* This method returns the estimated number of lines required to print the text. * This method returns the estimated number of lines required to print the text.
* @param string $txt text to print * @param string $txt text to print
@ -4305,7 +4305,7 @@ if (!class_exists('TCPDF', false)) {
set_magic_quotes_runtime($mqr); set_magic_quotes_runtime($mqr);
if ($ismask) { if ($ismask) {
// force grayscale // force grayscale
$info['cs'] = 'DeviceGray'; $info['cs'] = 'DeviceGray';
} }
$info['i'] = $this->numimages + 1; $info['i'] = $this->numimages + 1;
if ($imgmask !== false) { if ($imgmask !== false) {
@ -4547,7 +4547,7 @@ if (!class_exists('TCPDF', false)) {
fclose($f); fclose($f);
return array('w' => $w, 'h' => $h, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'FlateDecode', 'parms' => $parms, 'pal' => $pal, 'trns' => $trns, 'data' => $data); return array('w' => $w, 'h' => $h, 'cs' => $colspace, 'bpc' => $bpc, 'f' => 'FlateDecode', 'parms' => $parms, 'pal' => $pal, 'trns' => $trns, 'data' => $data);
} }
/** /**
* Binary-safe and URL-safe file read. * Binary-safe and URL-safe file read.
* Reads up to length bytes from the file pointer referenced by handle. Reading stops as soon as one of the following conditions is met: length bytes have been read; EOF (end of file) is reached. * Reads up to length bytes from the file pointer referenced by handle. Reading stops as soon as one of the following conditions is met: length bytes have been read; EOF (end of file) is reached.
@ -4565,7 +4565,7 @@ if (!class_exists('TCPDF', false)) {
} }
return $data; return $data;
} }
/** /**
* Extract info from a PNG image with alpha channel using the GD library. * Extract info from a PNG image with alpha channel using the GD library.
* @param string $file Name of the file containing the image. * @param string $file Name of the file containing the image.
@ -4874,7 +4874,7 @@ if (!class_exists('TCPDF', false)) {
} }
return ''; return '';
} }
/** /**
* Unset all class variables except the following critical variables: internal_encoding, state, bufferlen, buffer and diskcache. * Unset all class variables except the following critical variables: internal_encoding, state, bufferlen, buffer and diskcache.
* @param boolean $destroyall if true destroys all class variables, otherwise preserves critical variables. * @param boolean $destroyall if true destroys all class variables, otherwise preserves critical variables.
@ -5557,7 +5557,7 @@ if (!class_exists('TCPDF', false)) {
// for each character // for each character
foreach ($font['cw'] as $cid => $width) { foreach ($font['cw'] as $cid => $width) {
$cid -= $cidoffset; $cid -= $cidoffset;
if ($width != $font['dw']) { if ($width != $font['dw']) {
if ($cid == ($prevcid + 1)) { if ($cid == ($prevcid + 1)) {
// consecutive CID // consecutive CID
if ($width == $prevwidth) { if ($width == $prevwidth) {
@ -9024,7 +9024,7 @@ if (!class_exists('TCPDF', false)) {
} }
$this->newpagegroup[$page] = true; $this->newpagegroup[$page] = true;
} }
/** /**
* Defines an alias for the total number of pages. * Defines an alias for the total number of pages.
* It will be substituted as the document is closed. * It will be substituted as the document is closed.
@ -9051,7 +9051,7 @@ if (!class_exists('TCPDF', false)) {
} }
return $this->AliasNbPages; return $this->AliasNbPages;
} }
/** /**
* Defines an alias for the page number. * Defines an alias for the page number.
* It will be substituted as the document is closed. * It will be substituted as the document is closed.
@ -9089,7 +9089,7 @@ if (!class_exists('TCPDF', false)) {
public function getGroupPageNo() { public function getGroupPageNo() {
return $this->pagegroups[$this->currpagegroup]; return $this->pagegroups[$this->currpagegroup];
} }
/** /**
* Returns the current group page number formatted as a string. * Returns the current group page number formatted as a string.
* @access public * @access public
@ -9129,7 +9129,7 @@ if (!class_exists('TCPDF', false)) {
} }
return str_replace('{nb', '{pnb', $this->currpagegroup); return str_replace('{nb', '{pnb', $this->currpagegroup);
} }
/** /**
* Format the page numbers. * Format the page numbers.
* This method can be overriden for custom formats. * This method can be overriden for custom formats.
@ -9140,7 +9140,7 @@ if (!class_exists('TCPDF', false)) {
protected function formatPageNumber($num) { protected function formatPageNumber($num) {
return number_format((float)$num, 0, '', '.'); return number_format((float)$num, 0, '', '.');
} }
/** /**
* Format the page numbers on the Table Of Content. * Format the page numbers on the Table Of Content.
* This method can be overriden for custom formats. * This method can be overriden for custom formats.
@ -9152,7 +9152,7 @@ if (!class_exists('TCPDF', false)) {
protected function formatTOCPageNumber($num) { protected function formatTOCPageNumber($num) {
return number_format((float)$num, 0, '', '.'); return number_format((float)$num, 0, '', '.');
} }
/** /**
* Returns the current page number formatted as a string. * Returns the current page number formatted as a string.
* @access public * @access public
@ -9162,7 +9162,7 @@ if (!class_exists('TCPDF', false)) {
public function PageNoFormatted() { public function PageNoFormatted() {
return $this->formatPageNumber($this->PageNo()); return $this->formatPageNumber($this->PageNo());
} }
/* /*
* Put visibility settings. * Put visibility settings.
* @access protected * @access protected
@ -10279,7 +10279,7 @@ if (!class_exists('TCPDF', false)) {
public function getFontSizePt() { public function getFontSizePt() {
return $this->FontSizePt; return $this->FontSizePt;
} }
/** /**
* Returns the current font family name. * Returns the current font family name.
* @return string current font family name * @return string current font family name
@ -10289,7 +10289,7 @@ if (!class_exists('TCPDF', false)) {
public function getFontFamily() { public function getFontFamily() {
return $this->FontFamily; return $this->FontFamily;
} }
/** /**
* Returns the current font style. * Returns the current font style.
* @return string current font style * @return string current font style
@ -10800,12 +10800,12 @@ if (!class_exists('TCPDF', false)) {
$dom[$key]['align'] = ($this->rtl) ? 'R' : 'L'; $dom[$key]['align'] = ($this->rtl) ? 'R' : 'L';
} }
// vertically align image in line // vertically align image in line
if ((!$this->newline) if ((!$this->newline)
AND ($dom[$key]['value'] == 'img') AND ($dom[$key]['value'] == 'img')
AND (isset($dom[$key]['attribute']['height'])) AND (isset($dom[$key]['attribute']['height']))
AND ($dom[$key]['attribute']['height'] > 0) AND ($dom[$key]['attribute']['height'] > 0)
AND (!((($this->y + $this->getHTMLUnitToUnits($dom[$key]['attribute']['height'], $this->lasth, 'px')) > $this->PageBreakTrigger) AND (!((($this->y + $this->getHTMLUnitToUnits($dom[$key]['attribute']['height'], $this->lasth, 'px')) > $this->PageBreakTrigger)
AND (!$this->InFooter) AND (!$this->InFooter)
AND $this->AcceptPageBreak())) AND $this->AcceptPageBreak()))
) { ) {
if ($this->page > $startlinepage) { if ($this->page > $startlinepage) {
@ -10850,9 +10850,9 @@ if (!class_exists('TCPDF', false)) {
if (($fontname != $curfontname) OR ($fontstyle != $curfontstyle) OR ($fontsize != $curfontsize)) { if (($fontname != $curfontname) OR ($fontstyle != $curfontstyle) OR ($fontsize != $curfontsize)) {
$this->SetFont($fontname, $fontstyle, $fontsize); $this->SetFont($fontname, $fontstyle, $fontsize);
$this->lasth = $this->FontSize * $this->cell_height_ratio; $this->lasth = $this->FontSize * $this->cell_height_ratio;
if (is_numeric($fontsize) AND ($fontsize > 0) if (is_numeric($fontsize) AND ($fontsize > 0)
AND is_numeric($curfontsize) AND ($curfontsize > 0) AND is_numeric($curfontsize) AND ($curfontsize > 0)
AND ($fontsize != $curfontsize) AND (!$this->newline) AND ($fontsize != $curfontsize) AND (!$this->newline)
AND ($key < ($maxel - 1)) AND ($key < ($maxel - 1))
) { ) {
if ((!$this->newline) AND ($this->page > $startlinepage)) { if ((!$this->newline) AND ($this->page > $startlinepage)) {
@ -10973,7 +10973,7 @@ if (!class_exists('TCPDF', false)) {
} }
$no = 0; $no = 0;
$ns = 0; $ns = 0;
$pmidtemp = $pmid; $pmidtemp = $pmid;
// escape special characters // escape special characters
$pmidtemp = preg_replace('/[\\\][\(]/x', '\\#!#OP#!#', $pmidtemp); $pmidtemp = preg_replace('/[\\\][\(]/x', '\\#!#OP#!#', $pmidtemp);
@ -11021,7 +11021,7 @@ if (!class_exists('TCPDF', false)) {
$offset = $strpiece[2][1] + strlen($strpiece[2][0]); $offset = $strpiece[2][1] + strlen($strpiece[2][0]);
$epsposbeg = strpos($pmid, 'q'.$this->epsmarker, $offset); $epsposbeg = strpos($pmid, 'q'.$this->epsmarker, $offset);
$epsposend = strpos($pmid, $this->epsmarker.'Q', $offset) + strlen($this->epsmarker.'Q'); $epsposend = strpos($pmid, $this->epsmarker.'Q', $offset) + strlen($this->epsmarker.'Q');
if ((($epsposbeg > 0) AND ($epsposend > 0) AND ($offset > $epsposbeg) AND ($offset < $epsposend)) if ((($epsposbeg > 0) AND ($epsposend > 0) AND ($offset > $epsposbeg) AND ($offset < $epsposend))
OR (($epsposbeg === false) AND ($epsposend > 0) AND ($offset < $epsposend))) { OR (($epsposbeg === false) AND ($epsposend > 0) AND ($offset < $epsposend))) {
// shift EPS images // shift EPS images
$trx = sprintf('1 0 0 1 %.3F 0 cm', $spacew); $trx = sprintf('1 0 0 1 %.3F 0 cm', $spacew);
@ -11061,8 +11061,8 @@ if (!class_exists('TCPDF', false)) {
$spacew = ($spacewidth * ($nsmax - $ns)); $spacew = ($spacewidth * ($nsmax - $ns));
} }
// justify block // justify block
$pmid = preg_replace_callback('/([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid = preg_replace_callback('/([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x',
create_function('$matches', 'global $spacew; create_function('$matches', 'global $spacew;
$newx = sprintf("%.2F",(floatval($matches[1]) + $spacew)); $newx = sprintf("%.2F",(floatval($matches[1]) + $spacew));
return "".$newx." ".$matches[2]." x*#!#*x".$matches[3].$matches[4];'), $pmid, 1); return "".$newx." ".$matches[2]." x*#!#*x".$matches[3].$matches[4];'), $pmid, 1);
break; break;
@ -11072,8 +11072,8 @@ if (!class_exists('TCPDF', false)) {
preg_match('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid, $xmatches); preg_match('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid, $xmatches);
$currentxpos = $xmatches[1]; $currentxpos = $xmatches[1];
// justify block // justify block
$pmid = preg_replace_callback('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid = preg_replace_callback('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x',
create_function('$matches', 'global $spacew; create_function('$matches', 'global $spacew;
$newx = sprintf("%.2F",(floatval($matches[1]) + $spacew)); $newx = sprintf("%.2F",(floatval($matches[1]) + $spacew));
return "".$newx." ".$matches[2]." ".$matches[3]." ".$matches[4]." x*#!#*x".$matches[5].$matches[6];'), $pmid, 1); return "".$newx." ".$matches[2]." ".$matches[3]." ".$matches[4]." x*#!#*x".$matches[5].$matches[6];'), $pmid, 1);
break; break;
@ -11083,8 +11083,8 @@ if (!class_exists('TCPDF', false)) {
preg_match('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid, $xmatches); preg_match('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid, $xmatches);
$currentxpos = $xmatches[1]; $currentxpos = $xmatches[1];
// justify block // justify block
$pmid = preg_replace_callback('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x', $pmid = preg_replace_callback('/([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]([0-9\.\+\-]*)[\s]('.$strpiece[1][0].')[\s]('.$strpiece[2][0].')([\s]*)/x',
create_function('$matches', 'global $spacew; create_function('$matches', 'global $spacew;
$newx1 = sprintf("%.3F",(floatval($matches[1]) + $spacew)); $newx1 = sprintf("%.3F",(floatval($matches[1]) + $spacew));
$newx2 = sprintf("%.3F",(floatval($matches[3]) + $spacew)); $newx2 = sprintf("%.3F",(floatval($matches[3]) + $spacew));
$newx3 = sprintf("%.3F",(floatval($matches[5]) + $spacew)); $newx3 = sprintf("%.3F",(floatval($matches[5]) + $spacew));
@ -11112,7 +11112,7 @@ if (!class_exists('TCPDF', false)) {
// escape special characters // escape special characters
$pmidtemp = preg_replace('/[\\\][\(]/x', '\\#!#OP#!#', $pmidtemp); $pmidtemp = preg_replace('/[\\\][\(]/x', '\\#!#OP#!#', $pmidtemp);
$pmidtemp = preg_replace('/[\\\][\)]/x', '\\#!#CP#!#', $pmidtemp); $pmidtemp = preg_replace('/[\\\][\)]/x', '\\#!#CP#!#', $pmidtemp);
$pmid = preg_replace_callback("/\[\(([^\)]*)\)\]/x", $pmid = preg_replace_callback("/\[\(([^\)]*)\)\]/x",
create_function('$matches', 'global $spacew; create_function('$matches', 'global $spacew;
$matches[1] = str_replace("#!#OP#!#", "(", $matches[1]); $matches[1] = str_replace("#!#OP#!#", "(", $matches[1]);
$matches[1] = str_replace("#!#CP#!#", ")", $matches[1]); $matches[1] = str_replace("#!#CP#!#", ")", $matches[1]);
@ -11281,14 +11281,16 @@ if (!class_exists('TCPDF', false)) {
} }
} }
if (($trwsp['rowspan'] > 0) if (($trwsp['rowspan'] > 0)
AND ($rsstartx > ($this->x - $cellspacing - $currentcmargin - $this->feps)) AND ($rsstartx > ($this->x - $cellspacing - $currentcmargin - $this->feps))
AND ($rsstartx < ($this->x + $cellspacing + $currentcmargin + $this->feps)) AND ($rsstartx < ($this->x + $cellspacing + $currentcmargin + $this->feps))
AND (($trwsp['starty'] < ($this->y - $this->feps)) OR ($trwsp['startpage'] < $this->page))) { AND (($trwsp['starty'] < ($this->y - $this->feps)) OR ($trwsp['startpage'] < $this->page))) {
// set the starting X position of the current cell
$this->x = $rsendx + $cellspacingx; $this->x = $rsendx + $cellspacingx;
if (($trwsp['rowspan'] == 1) if (($trwsp['rowspan'] == 1)
AND (isset($dom[$trid]['endy'])) AND (isset($dom[$trid]['endy']))
AND (isset($dom[$trid]['endpage'])) AND (isset($dom[$trid]['endpage']))
AND ($trwsp['endpage'] == $dom[$trid]['endpage'])) { AND ($trwsp['endpage'] == $dom[$trid]['endpage'])) {
// set ending Y position for row
$dom[$table_el]['rowspans'][$rsk]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']); $dom[$table_el]['rowspans'][$rsk]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']);
$dom[$trid]['endy'] = $dom[$table_el]['rowspans'][$rsk]['endy']; $dom[$trid]['endy'] = $dom[$table_el]['rowspans'][$rsk]['endy'];
} }
@ -11342,12 +11344,12 @@ if (!class_exists('TCPDF', false)) {
// account for row-spanned cells // account for row-spanned cells
$dom[$table_el]['rowspans'][($trsid - 1)]['endx'] = $this->x; $dom[$table_el]['rowspans'][($trsid - 1)]['endx'] = $this->x;
$dom[$table_el]['rowspans'][($trsid - 1)]['endy'] = $this->y; $dom[$table_el]['rowspans'][($trsid - 1)]['endy'] = $this->y;
$dom[$table_el]['rowspans'][($trsid - 1)]['endpage'] = $this->page; $dom[$table_el]['rowspans'][($trsid - 1)]['endpage'] = $this->page;
} }
if (isset($dom[$table_el]['rowspans'])) { if (isset($dom[$table_el]['rowspans'])) {
// update endy and endpage on rowspanned cells // update endy and endpage on rowspanned cells
foreach ($dom[$table_el]['rowspans'] as $k => $trwsp) { foreach ($dom[$table_el]['rowspans'] as $k => $trwsp) {
if ($trwsp['rowspan'] > 0) { if ($trwsp['rowspan'] > 0) {
if (isset($dom[$trid]['endpage'])) { if (isset($dom[$trid]['endpage'])) {
if ($trwsp['endpage'] == $dom[$trid]['endpage']) { if ($trwsp['endpage'] == $dom[$trid]['endpage']) {
$dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']); $dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$trid]['endy'], $trwsp['endy']);
@ -11763,7 +11765,7 @@ if (!class_exists('TCPDF', false)) {
break; break;
} }
case 'li': { case 'li': {
$this->addHTMLVertSpace(1, $cell, '', $firstorlast, $tag['value'], false); $this->addHTMLVertSpace(1, $cell, '', $firstorlast, $tag['value'], false);
if ($this->listordered[$this->listnum]) { if ($this->listordered[$this->listnum]) {
// ordered item // ordered item
if (!empty($parent['attribute']['type'])) { if (!empty($parent['attribute']['type'])) {
@ -11886,8 +11888,15 @@ if (!class_exists('TCPDF', false)) {
$dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$table_el]['rowspans'][$k]['endy'], $dom[($dom[$key]['parent'])]['endy']); $dom[$table_el]['rowspans'][$k]['endy'] = max($dom[$table_el]['rowspans'][$k]['endy'], $dom[($dom[$key]['parent'])]['endy']);
$dom[($dom[$key]['parent'])]['endy'] = $dom[$table_el]['rowspans'][$k]['endy']; $dom[($dom[$key]['parent'])]['endy'] = $dom[$table_el]['rowspans'][$k]['endy'];
} }
}
// update remaining rowspanned cells
foreach ($dom[$table_el]['rowspans'] as $k => $trwsp) {
if ($dom[$table_el]['rowspans'][$k]['rowspan'] == 0) {
$dom[$table_el]['rowspans'][$k]['endpage'] = $dom[($dom[$key]['parent'])]['endpage'];
$dom[$table_el]['rowspans'][$k]['endy'] = $dom[($dom[$key]['parent'])]['endy'];
}
} }
} }
$this->setPage($parent['endpage']); $this->setPage($parent['endpage']);
$this->y = $parent['endy']; $this->y = $parent['endy'];
if (isset($dom[$table_el]['attribute']['cellspacing'])) { if (isset($dom[$table_el]['attribute']['cellspacing'])) {
@ -12050,7 +12059,7 @@ if (!class_exists('TCPDF', false)) {
$this->cMargin = $this->oldcMargin; $this->cMargin = $this->oldcMargin;
} }
$this->lasth = $this->FontSize * $this->cell_height_ratio; $this->lasth = $this->FontSize * $this->cell_height_ratio;
if (!empty($table_el['thead'])) { if (!empty($table_el['thead']) AND !empty($this->theadMargin)) {
// reset table header // reset table header
$this->thead = ''; $this->thead = '';
// restore top margin // restore top margin
@ -12213,7 +12222,7 @@ if (!class_exists('TCPDF', false)) {
case 'lower-alpha': case 'lower-alpha':
case 'lower-latin': case 'lower-latin':
case 'A': case 'A':
case 'upper-alpha': case 'upper-alpha':
case 'upper-latin': case 'upper-latin':
case 'lower-greek': { case 'lower-greek': {
$this->lisymbol = $symbol; $this->lisymbol = $symbol;
@ -12260,7 +12269,7 @@ if (!class_exists('TCPDF', false)) {
$this->rMargin -= $deltam; $this->rMargin -= $deltam;
} }
} }
/** /**
* Set the vertical spaces for HTML tags. * Set the vertical spaces for HTML tags.
* The array must have the following structure (example): * The array must have the following structure (example):
@ -12276,7 +12285,7 @@ if (!class_exists('TCPDF', false)) {
public function setHtmlVSpace($tagvs) { public function setHtmlVSpace($tagvs) {
$this->tagvspaces = $tagvs; $this->tagvspaces = $tagvs;
} }
/** /**
* Set custom width for list indentation. * Set custom width for list indentation.
* @param float $width width of the indentation. Use negative value to disable it. * @param float $width width of the indentation. Use negative value to disable it.
@ -12286,7 +12295,7 @@ if (!class_exists('TCPDF', false)) {
public function setListIndentWidth($width) { public function setListIndentWidth($width) {
return $this->customlistindent = floatval($width); return $this->customlistindent = floatval($width);
} }
/** /**
* Set the top/bottom cell sides to be open or closed when the cell cross the page. * Set the top/bottom cell sides to be open or closed when the cell cross the page.
* @param boolean $isopen if true keeps the top/bottom border open for the cell sides that cross the page. * @param boolean $isopen if true keeps the top/bottom border open for the cell sides that cross the page.
@ -12296,7 +12305,7 @@ if (!class_exists('TCPDF', false)) {
public function setOpenCell($isopen) { public function setOpenCell($isopen) {
$this->opencell = $isopen; $this->opencell = $isopen;
} }
/** /**
* Set the color and font style for HTML links. * Set the color and font style for HTML links.
* @param array $color RGB array of colors * @param array $color RGB array of colors
@ -12308,7 +12317,7 @@ if (!class_exists('TCPDF', false)) {
$this->htmlLinkColorArray = $color; $this->htmlLinkColorArray = $color;
$this->htmlLinkFontStyle = $fontstyle; $this->htmlLinkFontStyle = $fontstyle;
} }
/** /**
* convert html string containing value and unit of measure to user's units or points. * convert html string containing value and unit of measure to user's units or points.
* @param string $htmlval string containing values and unit * @param string $htmlval string containing values and unit
@ -12382,7 +12391,7 @@ if (!class_exists('TCPDF', false)) {
} }
return $retval; return $retval;
} }
/** /**
* Returns the Roman representation of an integer number * Returns the Roman representation of an integer number
* @param int number to convert * @param int number to convert
@ -12446,7 +12455,7 @@ if (!class_exists('TCPDF', false)) {
} }
return $roman; return $roman;
} }
/** /**
* Output an HTML list bullet or ordered item symbol * Output an HTML list bullet or ordered item symbol
* @param int $listdepth list nesting level * @param int $listdepth list nesting level
@ -12503,7 +12512,7 @@ if (!class_exists('TCPDF', false)) {
break; break;
} }
// ordered types // ordered types
// $this->listcount[$this->listnum]; // $this->listcount[$this->listnum];
// $textitem // $textitem
case '1': case '1':
@ -12532,7 +12541,7 @@ if (!class_exists('TCPDF', false)) {
break; break;
} }
case 'A': case 'A':
case 'upper-alpha': case 'upper-alpha':
case 'upper-latin': { case 'upper-latin': {
$textitem = chr(65 + $this->listcount[$this->listnum] - 1); $textitem = chr(65 + $this->listcount[$this->listnum] - 1);
break; break;
@ -12590,7 +12599,7 @@ if (!class_exists('TCPDF', false)) {
$this->x = $tmpx; $this->x = $tmpx;
$this->lispacer = ''; $this->lispacer = '';
} }
/** /**
* Returns current graphic variables as array. * Returns current graphic variables as array.
* @return array graphic variables * @return array graphic variables
@ -12621,7 +12630,7 @@ if (!class_exists('TCPDF', false)) {
); );
return $grapvars; return $grapvars;
} }
/** /**
* Set graphic variables. * Set graphic variables.
* @param $gvars array graphic variables * @param $gvars array graphic variables
@ -12653,7 +12662,7 @@ if (!class_exists('TCPDF', false)) {
$this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt); $this->SetFont($this->FontFamily, $this->FontStyle, $this->FontSizePt);
} }
} }
/** /**
* Returns a temporary filename for caching object on filesystem. * Returns a temporary filename for caching object on filesystem.
* @param string $prefix prefix to add to filename * @param string $prefix prefix to add to filename
@ -12664,7 +12673,7 @@ if (!class_exists('TCPDF', false)) {
protected function getObjFilename($name) { protected function getObjFilename($name) {
return tempnam(K_PATH_CACHE, $name.'_'); return tempnam(K_PATH_CACHE, $name.'_');
} }
/** /**
* Writes data to a temporary file on filesystem. * Writes data to a temporary file on filesystem.
* @param string $file file name * @param string $file file name
@ -12693,7 +12702,7 @@ if (!class_exists('TCPDF', false)) {
$this->cache_file_lenght[$filename] += strlen($data); $this->cache_file_lenght[$filename] += strlen($data);
} }
} }
/** /**
* Read data from a temporary file on filesystem. * Read data from a temporary file on filesystem.
* @param string $file file name * @param string $file file name
@ -12704,7 +12713,7 @@ if (!class_exists('TCPDF', false)) {
protected function readDiskCache($filename) { protected function readDiskCache($filename) {
return file_get_contents($filename); return file_get_contents($filename);
} }
/** /**
* Set buffer content (always append data). * Set buffer content (always append data).
* @param string $data data * @param string $data data
@ -12722,7 +12731,7 @@ if (!class_exists('TCPDF', false)) {
$this->buffer .= $data; $this->buffer .= $data;
} }
} }
/** /**
* Get buffer content. * Get buffer content.
* @return string buffer content * @return string buffer content
@ -12731,12 +12740,12 @@ if (!class_exists('TCPDF', false)) {
*/ */
protected function getBuffer() { protected function getBuffer() {
if ($this->diskcache) { if ($this->diskcache) {
return $this->readDiskCache($this->buffer); return $this->readDiskCache($this->buffer);
} else { } else {
return $this->buffer; return $this->buffer;
} }
} }
/** /**
* Set page buffer content. * Set page buffer content.
* @param int $page page number * @param int $page page number
@ -12764,7 +12773,7 @@ if (!class_exists('TCPDF', false)) {
$this->pagelen[$page] = strlen($data); $this->pagelen[$page] = strlen($data);
} }
} }
/** /**
* Get page buffer content. * Get page buffer content.
* @param int $page page number * @param int $page page number
@ -12774,13 +12783,13 @@ if (!class_exists('TCPDF', false)) {
*/ */
protected function getPageBuffer($page) { protected function getPageBuffer($page) {
if ($this->diskcache) { if ($this->diskcache) {
return $this->readDiskCache($this->pages[$page]); return $this->readDiskCache($this->pages[$page]);
} elseif (isset($this->pages[$page])) { } elseif (isset($this->pages[$page])) {
return $this->pages[$page]; return $this->pages[$page];
} }
return false; return false;
} }
/** /**
* Set image buffer content. * Set image buffer content.
* @param string $image image key * @param string $image image key
@ -12802,7 +12811,7 @@ if (!class_exists('TCPDF', false)) {
} }
++$this->numimages; ++$this->numimages;
} }
/** /**
* Set image buffer content. * Set image buffer content.
* @param string $image image key * @param string $image image key
@ -12823,7 +12832,7 @@ if (!class_exists('TCPDF', false)) {
$this->images[$image][$key] = $data; $this->images[$image][$key] = $data;
} }
} }
/** /**
* Get page buffer content. * Get page buffer content.
* @param string $image image key * @param string $image image key
@ -12833,13 +12842,13 @@ if (!class_exists('TCPDF', false)) {
*/ */
protected function getImageBuffer($image) { protected function getImageBuffer($image) {
if ($this->diskcache AND isset($this->images[$image])) { if ($this->diskcache AND isset($this->images[$image])) {
return unserialize($this->readDiskCache($this->images[$image])); return unserialize($this->readDiskCache($this->images[$image]));
} elseif (isset($this->images[$image])) { } elseif (isset($this->images[$image])) {
return $this->images[$image]; return $this->images[$image];
} }
return false; return false;
} }
/** /**
* Set font buffer content. * Set font buffer content.
* @param string $font font key * @param string $font font key
@ -12860,7 +12869,7 @@ if (!class_exists('TCPDF', false)) {
$this->fontkeys[] = $font; $this->fontkeys[] = $font;
} }
} }
/** /**
* Set font buffer content. * Set font buffer content.
* @param string $font font key * @param string $font font key
@ -12881,7 +12890,7 @@ if (!class_exists('TCPDF', false)) {
$this->fonts[$font][$key] = $data; $this->fonts[$font][$key] = $data;
} }
} }
/** /**
* Get font buffer content. * Get font buffer content.
* @param string $font font key * @param string $font font key
@ -12891,13 +12900,13 @@ if (!class_exists('TCPDF', false)) {
*/ */
protected function getFontBuffer($font) { protected function getFontBuffer($font) {
if ($this->diskcache AND isset($this->fonts[$font])) { if ($this->diskcache AND isset($this->fonts[$font])) {
return unserialize($this->readDiskCache($this->fonts[$font])); return unserialize($this->readDiskCache($this->fonts[$font]));
} elseif (isset($this->fonts[$font])) { } elseif (isset($this->fonts[$font])) {
return $this->fonts[$font]; return $this->fonts[$font];
} }
return false; return false;
} }
/** /**
* Move a page to a previous position. * Move a page to a previous position.
* Use this method just before Output(). * Use this method just before Output().
@ -13017,9 +13026,9 @@ if (!class_exists('TCPDF', false)) {
// adjust javascript // adjust javascript
$tmpjavascript = $this->javascript; $tmpjavascript = $this->javascript;
global $jfrompage, $jtopage; global $jfrompage, $jtopage;
$jfrompage = $frompage; $jfrompage = $frompage;
$jtopage = $topage; $jtopage = $topage;
$this->javascript = preg_replace_callback('/this\.addField\(\'([^\']*)\',\'([^\']*)\',([0-9]+)/', $this->javascript = preg_replace_callback('/this\.addField\(\'([^\']*)\',\'([^\']*)\',([0-9]+)/',
create_function('$matches', 'global $jfrompage, $jtopage; create_function('$matches', 'global $jfrompage, $jtopage;
$pagenum = intval($matches[3]) + 1; $pagenum = intval($matches[3]) + 1;
if (($pagenum >= $jtopage) AND ($pagenum < $jfrompage)) { if (($pagenum >= $jtopage) AND ($pagenum < $jfrompage)) {
@ -13035,7 +13044,7 @@ if (!class_exists('TCPDF', false)) {
$this->lastPage(true); $this->lastPage(true);
return true; return true;
} }
/** /**
* Output a Table of Content Index (TOC). * Output a Table of Content Index (TOC).
* You can override this method to achieve different styles. * You can override this method to achieve different styles.
@ -13183,7 +13192,7 @@ if (!class_exists('TCPDF', false)) {
} }
$this->SetFont($fontfamily, $fontstyle, $fontsize); $this->SetFont($fontfamily, $fontstyle, $fontsize);
} }
/** /**
* Stores a copy of the current TCPDF object. * Stores a copy of the current TCPDF object.
* @access public * @access public
@ -13197,7 +13206,7 @@ if (!class_exists('TCPDF', false)) {
// clone current object // clone current object
$this->objcopy = $this->objclone($this); $this->objcopy = $this->objclone($this);
} }
/** /**
* Delete the copy of the current TCPDF object * Delete the copy of the current TCPDF object
* @access public * @access public
@ -13209,7 +13218,7 @@ if (!class_exists('TCPDF', false)) {
unset($this->objcopy); unset($this->objcopy);
} }
} }
/** /**
* This method allows to encapsulate some TCPDF commands to be later commited or deleted. * This method allows to encapsulate some TCPDF commands to be later commited or deleted.
* @param string $action the action to be taken. Legal values are 'start' = starts a new transaction; 'commit' = commit the latest transaction; 'rollback' = undo the latest transaction. * @param string $action the action to be taken. Legal values are 'start' = starts a new transaction; 'commit' = commit the latest transaction; 'rollback' = undo the latest transaction.
@ -13230,7 +13239,7 @@ if (!class_exists('TCPDF', false)) {
} }
return $this; return $this;
} }
/** /**
* Creates a copy of a class object * Creates a copy of a class object
* @param object $object class object to be cloned * @param object $object class object to be cloned