30
1
mirror of https://github.com/vdm-io/tcpdf.git synced 2024-05-31 21:30:47 +00:00

5.9.182 (2012-09-05)

- Bug item #3564982 "Infinite loop in Write() method" was fixed.
This commit is contained in:
Nicola Asuni 2012-09-05 19:32:19 +01:00
parent c47cad2bdd
commit cd3db1fd55
3 changed files with 16 additions and 9 deletions

View File

@ -1,3 +1,6 @@
5.9.182 (2012-09-05)
- Bug item #3564982 "Infinite loop in Write() method" was fixed.
5.9.181 (2012-08-31) 5.9.181 (2012-08-31)
- composer.json file was added. - composer.json file was added.
- Bug item #3563369 "Cached images are not unlinked some time" was fixed. - Bug item #3563369 "Cached images are not unlinked some time" was fixed.

View File

@ -8,8 +8,8 @@ http://sourceforge.net/donate/index.php?group_id=128076
------------------------------------------------------------ ------------------------------------------------------------
Name: TCPDF Name: TCPDF
Version: 5.9.181 Version: 5.9.182
Release date: 2012-08-31 Release date: 2012-09-05
Author: Nicola Asuni Author: Nicola Asuni
Copyright (c) 2002-2012: Copyright (c) 2002-2012:

View File

@ -1,9 +1,9 @@
<?php <?php
//============================================================+ //============================================================+
// File name : tcpdf.php // File name : tcpdf.php
// Version : 5.9.181 // Version : 5.9.182
// Begin : 2002-08-03 // Begin : 2002-08-03
// Last Update : 2012-08-31 // Last Update : 2012-09-05
// Author : Nicola Asuni - Tecnick.com LTD - Manor Coach House, Church Hill, Aldershot, Hants, GU12 4RQ, UK - www.tecnick.com - info@tecnick.com // Author : Nicola Asuni - Tecnick.com LTD - Manor Coach House, Church Hill, Aldershot, Hants, GU12 4RQ, UK - www.tecnick.com - info@tecnick.com
// License : http://www.tecnick.com/pagefiles/tcpdf/LICENSE.TXT GNU-LGPLv3 // License : http://www.tecnick.com/pagefiles/tcpdf/LICENSE.TXT GNU-LGPLv3
// ------------------------------------------------------------------- // -------------------------------------------------------------------
@ -138,7 +138,7 @@
* Tools to encode your unicode fonts are on fonts/utils directory.</p> * Tools to encode your unicode fonts are on fonts/utils directory.</p>
* @package com.tecnick.tcpdf * @package com.tecnick.tcpdf
* @author Nicola Asuni * @author Nicola Asuni
* @version 5.9.181 * @version 5.9.182
*/ */
// Main configuration file. Define the K_TCPDF_EXTERNAL_CONFIG constant to skip this file. // Main configuration file. Define the K_TCPDF_EXTERNAL_CONFIG constant to skip this file.
@ -150,7 +150,7 @@ require_once(dirname(__FILE__).'/config/tcpdf_config.php');
* 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>
* @package com.tecnick.tcpdf * @package com.tecnick.tcpdf
* @brief PHP class for generating PDF documents without requiring external extensions. * @brief PHP class for generating PDF documents without requiring external extensions.
* @version 5.9.181 * @version 5.9.182
* @author Nicola Asuni - info@tecnick.com * @author Nicola Asuni - info@tecnick.com
*/ */
class TCPDF { class TCPDF {
@ -161,7 +161,7 @@ class TCPDF {
* Current TCPDF version. * Current TCPDF version.
* @private * @private
*/ */
private $tcpdf_version = '5.9.181'; private $tcpdf_version = '5.9.182';
// Protected properties // Protected properties
@ -7237,6 +7237,10 @@ class TCPDF {
$chrwidth = $this->GetCharWidth(46); // dot character $chrwidth = $this->GetCharWidth(46); // dot character
// get array of unicode values // get array of unicode values
$chars = $this->UTF8StringToArray($s); $chars = $this->UTF8StringToArray($s);
// calculate maximum width for a single character on string
$chrw = $this->GetArrStringWidth($chars, '', '', 0, true);
array_walk($chrw, array($this, 'getRawCharWidth'));
$maxchwidth = max($chrw);
// get array of chars // get array of chars
$uchars = $this->UTF8ArrayToUniArray($chars); $uchars = $this->UTF8ArrayToUniArray($chars);
// get the number of characters // get the number of characters
@ -7261,8 +7265,8 @@ class TCPDF {
if (!$firstline) { if (!$firstline) {
$wmax -= ($this->cell_padding['L'] + $this->cell_padding['R']); $wmax -= ($this->cell_padding['L'] + $this->cell_padding['R']);
} }
if ((!$firstline) AND (($chrwidth > $wmax) OR ($this->GetCharWidth($chars[0]) > $wmax))) { if ((!$firstline) AND (($chrwidth > $wmax) OR ($maxchwidth > $wmax))) {
// a single character do not fit on column // the maximum width character do not fit on column
return ''; return '';
} }
// minimum row height // minimum row height