ILIAS
Release_4_4_x_branch Revision 61816
|
Font methods for TCPDF library. More...
Static Public Member Functions | |
static | addTTFfont ($fontfile, $fonttype='', $enc='', $flags=32, $outpath='', $platid=3, $encid=1, $addcbbox=false, $link=false) |
Convert and add the selected TrueType or Type1 font to the fonts folder (that must be writeable). | |
static | _getTTFtableChecksum ($table, $length) |
Returs the checksum of a TTF table. | |
static | _getTrueTypeFontSubset ($font, $subsetchars) |
Returns a subset of the TrueType font data without the unused glyphs. | |
static | _putfontwidths ($font, $cidoffset=0) |
Outputs font widths. | |
static | unichr ($c, $unicode=true) |
Returns the unicode caracter specified by the value. | |
static | unichrUnicode ($c) |
Returns the unicode caracter specified by UTF-8 value. | |
static | unichrASCII ($c) |
Returns the unicode caracter specified by ASCII value. | |
static | arrUTF8ToUTF16BE ($unicode, $setbom=false) |
Converts array of UTF-8 characters to UTF16-BE string. | |
static | UTF8ArrayToUniArray ($ta, $isunicode=true) |
Convert an array of UTF8 values to array of unicode characters. | |
static | UTF8ArrSubString ($strarr, $start='', $end='', $unicode=true) |
Extract a slice of the $strarr array and return it as string. | |
static | UniArrSubString ($uniarr, $start='', $end='') |
Extract a slice of the $uniarr array and return it as string. | |
static | updateCIDtoGIDmap ($map, $cid, $gid) |
Update the CIDToGIDMap string with a new value. | |
static | _getfontpath () |
Return fonts path. | |
static | UTF8ArrToLatin1Arr ($unicode) |
Converts UTF-8 characters array to array of Latin1 characters array | |
static | UTF8ArrToLatin1 ($unicode) |
Converts UTF-8 characters array to array of Latin1 string | |
static | uniord ($uch) |
Converts UTF-8 character to integer value. | |
static | UTF8StringToArray ($str, $isunicode=true, &$currentfont) |
Converts UTF-8 strings to codepoints array. | |
static | UTF8ToLatin1 ($str, $isunicode=true, &$currentfont) |
Converts UTF-8 strings to Latin1 when using the standard 14 core fonts. | |
static | UTF8ToUTF16BE ($str, $setbom=false, $isunicode=true, &$currentfont) |
Converts UTF-8 strings to UTF16-BE. | |
static | utf8StrRev ($str, $setbom=false, $forcertl=false, $isunicode=true, &$currentfont) |
Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). | |
static | utf8StrArrRev ($arr, $str='', $setbom=false, $forcertl=false, $isunicode=true, &$currentfont) |
Reverse the RLT substrings array using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). | |
static | utf8Bidi ($ta, $str='', $forcertl=false, $isunicode=true, &$currentfont) |
Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/). | |
static | getFontRefSize ($size, $refsize=12) |
Get a reference font size. |
Font methods for TCPDF library.
Definition at line 48 of file tcpdf_fonts.php.
|
static |
Return fonts path.
Definition at line 1677 of file tcpdf_fonts.php.
Referenced by TCPDF\_putfonts(), TCPDF\_puttruetypeunicode(), TCPDF\AddFont(), addTTFfont(), and TCPDF\getFontsList().
|
static |
Returns a subset of the TrueType font data without the unused glyphs.
$font | (string) TrueType font data. |
$subsetchars | (array) Array of used characters (the glyphs to keep). |
Definition at line 937 of file tcpdf_fonts.php.
References TCPDF_STATIC\_getBYTE(), TCPDF_STATIC\_getSHORT(), TCPDF_STATIC\_getULONG(), and TCPDF_STATIC\_getUSHORT().
Referenced by TCPDF\_putfonts().
|
static |
Returs the checksum of a TTF table.
$table | (string) table to check |
$length | (int) length of table in bytes |
Definition at line 915 of file tcpdf_fonts.php.
|
static |
Outputs font widths.
$font | (array) font data |
$cidoffset | (int) offset for CID values |
Definition at line 1382 of file tcpdf_fonts.php.
|
static |
Convert and add the selected TrueType or Type1 font to the fonts folder (that must be writeable).
$fontfile | (string) Font file (full path). |
$fonttype | (string) Font type. Leave empty for autodetect mode. Valid values are: TrueTypeUnicode, TrueType, Type1, CID0JP = CID-0 Japanese, CID0KR = CID-0 Korean, CID0CS = CID-0 Chinese Simplified, CID0CT = CID-0 Chinese Traditional. |
$enc | (string) Name of the encoding table to use. Leave empty for default mode. Omit this parameter for TrueType Unicode and symbolic fonts like Symbol or ZapfDingBats. |
$flags | (int) Unsigned 32-bit integer containing flags specifying various characteristics of the font (PDF32000:2008 - 9.8.2 Font Descriptor Flags): +1 for fixed font; +4 for symbol or +32 for non-symbol; +64 for italic. Fixed and Italic mode are generally autodetected so you have to set it to 32 = non-symbolic font (default) or 4 = symbolic font. |
$outpath | (string) Output path for generated font files (must be writeable by the web server). Leave empty for default font folder. |
$platid | (int) Platform ID for CMAP table to extract (when building a Unicode font for Windows this value should be 3, for Macintosh should be 1). |
$encid | (int) Encoding ID for CMAP table to extract (when building a Unicode font for Windows this value should be 1, for Macintosh should be 0). When Platform ID is 3, legal values for Encoding ID are: 0=Symbol, 1=Unicode, 2=ShiftJIS, 3=PRC, 4=Big5, 5=Wansung, 6=Johab, 7=Reserved, 8=Reserved, 9=Reserved, 10=UCS-4. |
$addcbbox | (boolean) If true includes the character bounding box information on the php font file. |
$link | (boolean) If true link to system font instead of copying the font data (not transportable) - Note: do not work with Type1 fonts. |
Definition at line 66 of file tcpdf_fonts.php.
References TCPDF_FONT_DATA\$encmap, $file, TCPDF_STATIC\_getBYTE(), TCPDF_STATIC\_getFIXED(), _getfontpath(), TCPDF_STATIC\_getFWORD(), TCPDF_STATIC\_getSHORT(), TCPDF_STATIC\_getUFWORD(), TCPDF_STATIC\_getULONG(), and TCPDF_STATIC\_getUSHORT().
|
static |
Converts array of UTF-8 characters to UTF16-BE string.
Based on: http://www.faqs.org/rfcs/rfc2781.html
Encoding UTF-16:
Encoding of a single character from an ISO 10646 character value to UTF-16 proceeds as follows. Let U be the character number, no greater than 0x10FFFF.
1) If U < 0x10000, encode U as a 16-bit unsigned integer and terminate.
2) Let U' = U - 0x10000. Because U is less than or equal to 0x10FFFF, U' must be less than or equal to 0xFFFFF. That is, U' can be represented in 20 bits.
3) Initialize two 16-bit unsigned integers, W1 and W2, to 0xD800 and 0xDC00, respectively. These integers each have 10 bits free to encode the character value, for a total of 20 bits.
4) Assign the 10 high-order bits of the 20-bit U' to the 10 low-order bits of W1 and the 10 low-order bits of U' to the 10 low-order bits of W2. Terminate.
Graphically, steps 2 through 4 look like: U' = yyyyyyyyyyxxxxxxxxxx W1 = 110110yyyyyyyyyy W2 = 110111xxxxxxxxxx
$unicode | (array) array containing UTF-8 unicode values |
$setbom | (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) |
Definition at line 1564 of file tcpdf_fonts.php.
Referenced by TCPDF\getCellCode().
|
static |
Get a reference font size.
$size | (string) String containing font size value. |
$refsize | (float) Reference font size in points. |
Definition at line 2494 of file tcpdf_fonts.php.
References $size.
Referenced by TCPDF\getHTMLFontUnits().
|
static |
Extract a slice of the $uniarr array and return it as string.
$uniarr | (string) The input array of characters. |
$start | (int) the starting element of $strarr. |
$end | (int) first element that will not be returned. |
Definition at line 1637 of file tcpdf_fonts.php.
Referenced by TCPDF\replaceMissingChars(), and TCPDF\Write().
|
static |
Returns the unicode caracter specified by the value.
$c | (int) UTF-8 value |
$unicode | (boolean) True if we are in unicode mode, false otherwise. |
Definition at line 1486 of file tcpdf_fonts.php.
Referenced by TCPDF\getCellCode(), TCPDF\getNumLines(), TCPDF\hyphenateWord(), TCPDF\putHtmlListBullet(), and TCPDF\Write().
|
static |
Returns the unicode caracter specified by ASCII value.
$c | (int) UTF-8 value |
Definition at line 1522 of file tcpdf_fonts.php.
|
static |
Returns the unicode caracter specified by UTF-8 value.
$c | (int) UTF-8 value |
Definition at line 1512 of file tcpdf_fonts.php.
|
static |
Converts UTF-8 character to integer value.
Invalid byte sequences will be replaced with 0xFFFD (replacement character)
Based on: http://www.faqs.org/rfcs/rfc3629.html
Char. number range | UTF-8 octet sequence (hexadecimal) | (binary) --------------------+----------------------------------------------- 0000 0000-0000 007F | 0xxxxxxx 0000 0080-0000 07FF | 110xxxxx 10xxxxxx 0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx 0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx ---------------------------------------------------------------------
ABFN notation: --------------------------------------------------------------------- UTF8-octets = *( UTF8-char ) UTF8-char = UTF8-1 / UTF8-2 / UTF8-3 / UTF8-4 UTF8-1 = x00-7F UTF8-2 = xC2-DF UTF8-tail
UTF8-3 = xE0 xA0-BF UTF8-tail / xE1-EC 2( UTF8-tail ) / xED x80-9F UTF8-tail / xEE-EF 2( UTF8-tail ) UTF8-4 = xF0 x90-BF 2( UTF8-tail ) / xF1-F3 3( UTF8-tail ) / xF4 x80-8F 2( UTF8-tail ) UTF8-tail = x80-BF ---------------------------------------------------------------------
$uch | (string) character string to process. |
Definition at line 1770 of file tcpdf_fonts.php.
|
static |
Update the CIDToGIDMap string with a new value.
$map | (string) CIDToGIDMap. |
$cid | (int) CID value. |
$gid | (int) GID value. |
Definition at line 1661 of file tcpdf_fonts.php.
|
static |
Convert an array of UTF8 values to array of unicode characters.
$ta | (array) The input array of UTF8 values. |
$isunicode | (boolean) True for Unicode mode, false otherwise. |
Definition at line 1598 of file tcpdf_fonts.php.
Referenced by TCPDF\replaceMissingChars(), and TCPDF\Write().
|
static |
Extract a slice of the $strarr array and return it as string.
$strarr | (string) The input array of characters. |
$start | (int) the starting element of $strarr. |
$end | (int) first element that will not be returned. |
$unicode | (boolean) True if we are in unicode mode, false otherwise. |
Definition at line 1614 of file tcpdf_fonts.php.
Referenced by TCPDF\hyphenateText(), and TCPDF\hyphenateWord().
|
static |
Converts UTF-8 characters array to array of Latin1 string
$unicode | (array) array containing UTF-8 unicode values |
Definition at line 1720 of file tcpdf_fonts.php.
References TCPDF_FONT_DATA\$uni_utf8tolatin.
|
static |
Converts UTF-8 characters array to array of Latin1 characters array
$unicode | (array) array containing UTF-8 unicode values |
Definition at line 1695 of file tcpdf_fonts.php.
References TCPDF_FONT_DATA\$uni_utf8tolatin.
Referenced by TCPDF\GetArrStringWidth().
|
static |
Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/).
$ta | (array) array of characters composing the string. |
$str | (string) string to process |
$forcertl | (bool) if 'R' forces RTL, if 'L' forces LTR |
$isunicode | (boolean) True if the document is in Unicode mode, false otherwise. |
$currentfont | (array) Reference to current font array. |
Definition at line 1930 of file tcpdf_fonts.php.
References TCPDF_FONT_DATA\$uni_arabicsubst, TCPDF_FONT_DATA\$uni_diacritics, TCPDF_FONT_DATA\$uni_laa_array, TCPDF_FONT_DATA\$uni_LRE, TCPDF_FONT_DATA\$uni_LRO, TCPDF_FONT_DATA\$uni_mirror, TCPDF_FONT_DATA\$uni_PDF, TCPDF_FONT_DATA\$uni_RE_PATTERN_ARABIC, TCPDF_FONT_DATA\$uni_RE_PATTERN_RTL, TCPDF_FONT_DATA\$uni_RLE, TCPDF_FONT_DATA\$uni_RLO, TCPDF_FONT_DATA\$uni_type, and TCPDF_STATIC\empty_string().
Referenced by TCPDF\__construct(), TCPDF\_fixAES256Password(), TCPDF\getCellCode(), TCPDF\getNumLines(), TCPDF\GetStringWidth(), and TCPDF\Write().
|
static |
Reverse the RLT substrings array using the Bidirectional Algorithm (http://unicode.org/reports/tr9/).
$arr | (array) array of unicode values. |
$str | (string) string to manipulate (or empty value). |
$setbom | (bool) if true set the Byte Order Mark (BOM = 0xFEFF) |
$forcertl | (bool) if true forces RTL text direction |
$isunicode | (boolean) True if the document is in Unicode mode, false otherwise. |
$currentfont | (array) Reference to current font array. |
Definition at line 1914 of file tcpdf_fonts.php.
|
static |
Converts UTF-8 strings to codepoints array.
Invalid byte sequences will be replaced with 0xFFFD (replacement character)
$str | (string) string to process. |
$isunicode | (boolean) True when the documetn is in Unicode mode, false otherwise. |
$currentfont | (array) Reference to current font array. |
Definition at line 1839 of file tcpdf_fonts.php.
Referenced by TCPDF\_fixAES256Password(), TCPDF\getCellCode(), TCPDF\GetNumChars(), TCPDF\getNumLines(), TCPDF\GetStringWidth(), TCPDF\hyphenateText(), TCPDF\hyphenateWord(), TCPDF\isCharDefined(), TCPDF\replaceMissingChars(), and TCPDF\Write().
|
static |
Reverse the RLT substrings using the Bidirectional Algorithm (http://unicode.org/reports/tr9/).
$str | (string) string to manipulate. |
$setbom | (bool) if true set the Byte Order Mark (BOM = 0xFEFF) |
$forcertl | (bool) if true forces RTL text direction |
$isunicode | (boolean) True if the document is in Unicode mode, false otherwise. |
$currentfont | (array) Reference to current font array. |
Definition at line 1897 of file tcpdf_fonts.php.
Referenced by TCPDF\_escapetext(), and TCPDF\getInternalPageNumberAliases().
|
static |
Converts UTF-8 strings to Latin1 when using the standard 14 core fonts.
$str | (string) string to process. |
$isunicode | (boolean) True when the documetn is in Unicode mode, false otherwise. |
$currentfont | (array) Reference to current font array. |
Definition at line 1861 of file tcpdf_fonts.php.
Referenced by TCPDF\_escapetext(), TCPDF\getCellCode(), and TCPDF\getInternalPageNumberAliases().
|
static |
Converts UTF-8 strings to UTF16-BE.
$str | (string) string to process. |
$setbom | (boolean) if true set the Byte Order Mark (BOM = 0xFEFF) |
$isunicode | (boolean) True when the documetn is in Unicode mode, false otherwise. |
$currentfont | (array) Reference to current font array. |
Definition at line 1877 of file tcpdf_fonts.php.
Referenced by TCPDF\_putpages(), TCPDF\_textstring(), TCPDF\addHTMLTOC(), TCPDF\addTOC(), and TCPDF\replaceRightShiftPageNumAliases().