Merge branch 'main' of github.com:tecnickcom/TCPDF into main

This commit is contained in:
nicolaasuni 2021-03-27 08:32:34 +00:00
commit a9525646a1
5 changed files with 17 additions and 11 deletions

View File

@ -352,7 +352,7 @@ please contact mssridhar AT vsnl.com.
Noah Levitt found out that the Sinhalese fonts available on the site
<http://www.metta.lk/fonts/> are released under GNU GPL, or,
precisely, "Public Domain under GNU Licence Produced by DMS
precisely, "Public Domain under GNU Licence Produced by DMS
Electronics for The Sri Lanka Tipitaka Project" (taken from the font
comment), and took the effort of recoding the font to Unicode.

View File

@ -357,7 +357,7 @@ please contact mssridhar AT vsnl.com.
Noah Levitt found out that the Sinhalese fonts available on the site
<http://www.metta.lk/fonts/> are released under GNU GPL, or,
precisely, "Public Domain under GNU Licence Produced by DMS
precisely, "Public Domain under GNU Licence Produced by DMS
Electronics for The Sri Lanka Tipitaka Project" (taken from the font
comment), and took the effort of recoding the font to Unicode.

View File

@ -1995,7 +1995,7 @@ class TCPDF_FONTS {
* @author Nicola Asuni
* @public static
*/
public static function UTF8StringToArray($str, $isunicode=true, &$currentfont) {
public static function UTF8StringToArray($str, $isunicode=true, &$currentfont=array()) {
if ($isunicode) {
// requires PCRE unicode support turned on
$chars = TCPDF_STATIC::pregSplit('//','u', $str, -1, PREG_SPLIT_NO_EMPTY);
@ -2021,7 +2021,7 @@ class TCPDF_FONTS {
* @since 3.2.000 (2008-06-23)
* @public static
*/
public static function UTF8ToLatin1($str, $isunicode=true, &$currentfont) {
public static function UTF8ToLatin1($str, $isunicode=true, &$currentfont=array()) {
$unicode = self::UTF8StringToArray($str, $isunicode, $currentfont); // array containing UTF-8 unicode values
return self::UTF8ArrToLatin1($unicode);
}
@ -2037,7 +2037,7 @@ class TCPDF_FONTS {
* @since 1.53.0.TC005 (2005-01-05)
* @public static
*/
public static function UTF8ToUTF16BE($str, $setbom=false, $isunicode=true, &$currentfont) {
public static function UTF8ToUTF16BE($str, $setbom=false, $isunicode=true, &$currentfont=array()) {
if (!$isunicode) {
return $str; // string is not in unicode
}
@ -2057,7 +2057,7 @@ class TCPDF_FONTS {
* @since 2.1.000 (2008-01-08)
* @public static
*/
public static function utf8StrRev($str, $setbom=false, $forcertl=false, $isunicode=true, &$currentfont) {
public static function utf8StrRev($str, $setbom=false, $forcertl=false, $isunicode=true, &$currentfont=array()) {
return self::utf8StrArrRev(self::UTF8StringToArray($str, $isunicode, $currentfont), $str, $setbom, $forcertl, $isunicode, $currentfont);
}
@ -2074,7 +2074,7 @@ class TCPDF_FONTS {
* @since 4.9.000 (2010-03-27)
* @public static
*/
public static function utf8StrArrRev($arr, $str='', $setbom=false, $forcertl=false, $isunicode=true, &$currentfont) {
public static function utf8StrArrRev($arr, $str='', $setbom=false, $forcertl=false, $isunicode=true, &$currentfont=array()) {
return self::arrUTF8ToUTF16BE(self::utf8Bidi($arr, $str, $forcertl, $isunicode, $currentfont), $setbom);
}
@ -2090,7 +2090,7 @@ class TCPDF_FONTS {
* @since 2.4.000 (2008-03-06)
* @public static
*/
public static function utf8Bidi($ta, $str='', $forcertl=false, $isunicode=true, &$currentfont) {
public static function utf8Bidi($ta, $str='', $forcertl=false, $isunicode=true, &$currentfont=array()) {
// paragraph embedding level
$pel = 0;
// max level

View File

@ -1136,7 +1136,7 @@ class TCPDF_STATIC {
* @see setHtmlVSpace()
* @public static
*/
public static function fixHTMLCode($html, $default_css='', $tagvs='', $tidy_options='', &$tagvspaces) {
public static function fixHTMLCode($html, $default_css='', $tagvs='', $tidy_options='', &$tagvspaces=array()) {
// configure parameters for HTML Tidy
if ($tidy_options === '') {
$tidy_options = array (
@ -2507,7 +2507,7 @@ class TCPDF_STATIC {
* @since 5.0.010 (2010-05-17)
* @public static
*/
public static function setPageBoxes($page, $type, $llx, $lly, $urx, $ury, $points=false, $k, $pagedim=array()) {
public static function setPageBoxes($page, $type, $llx, $lly, $urx, $ury, $points=false, $k=1, $pagedim=array()) {
if (!isset($pagedim[$page])) {
// initialize array
$pagedim[$page] = array();

View File

@ -6489,7 +6489,7 @@ class TCPDF {
// *** very slow ***
$l = $this->GetArrStringWidth(TCPDF_FONTS::utf8Bidi(array_slice($chars, $j, ($i - $j)), '', $this->tmprtl, $this->isunicode, $this->CurrentFont));
} else {
$l += $this->GetCharWidth($c);
$l += $this->GetCharWidth($c, ($i+1 < $nb));
}
if (($l > $wmax) OR (($c == 173) AND (($l + $tmp_shy_replacement_width) >= $wmax))) {
if (($c == 173) AND (($l + $tmp_shy_replacement_width) > $wmax)) {
@ -6866,6 +6866,12 @@ class TCPDF {
list($x, $y) = $this->checkPageRegions($h, $x, $y);
$exurl = ''; // external streams
$imsize = FALSE;
// Make sure the file variable is not empty or null because accessing $file[0] later
// results in error when running PHP 7.4
if (empty($file)) {
return false;
}
// check if we are passing an image as file or string
if ($file[0] === '@') {
// image from string