| @@ 736-753 (lines=18) @@ | ||
| 733 | } |
|
| 734 | break; |
|
| 735 | } |
|
| 736 | case 12: { // Format 12: Segmented coverage |
|
| 737 | $offset += 10; // skip length and version/language |
|
| 738 | $nGroups = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 739 | $offset += 4; |
|
| 740 | for ($k = 0; $k < $nGroups; ++$k) { |
|
| 741 | $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 742 | $offset += 4; |
|
| 743 | $endCharCode = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 744 | $offset += 4; |
|
| 745 | $startGlyphCode = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 746 | $offset += 4; |
|
| 747 | for ($c = $startCharCode; $c <= $endCharCode; ++$c) { |
|
| 748 | $ctg[$c] = $startGlyphCode; |
|
| 749 | ++$startGlyphCode; |
|
| 750 | } |
|
| 751 | } |
|
| 752 | break; |
|
| 753 | } |
|
| 754 | case 13: { // Format 13: Many-to-one range mappings |
|
| 755 | // to be implemented ... |
|
| 756 | break; |
|
| @@ 1213-1232 (lines=20) @@ | ||
| 1210 | } |
|
| 1211 | break; |
|
| 1212 | } |
|
| 1213 | case 12: { // Format 12: Segmented coverage |
|
| 1214 | $offset += 10; // skip length and version/language |
|
| 1215 | $nGroups = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 1216 | $offset += 4; |
|
| 1217 | for ($k = 0; $k < $nGroups; ++$k) { |
|
| 1218 | $startCharCode = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 1219 | $offset += 4; |
|
| 1220 | $endCharCode = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 1221 | $offset += 4; |
|
| 1222 | $startGlyphCode = TCPDF_STATIC::_getULONG($font, $offset); |
|
| 1223 | $offset += 4; |
|
| 1224 | for ($c = $startCharCode; $c <= $endCharCode; ++$c) { |
|
| 1225 | if (isset($subsetchars[$c])) { |
|
| 1226 | $subsetglyphs[$startGlyphCode] = true; |
|
| 1227 | } |
|
| 1228 | ++$startGlyphCode; |
|
| 1229 | } |
|
| 1230 | } |
|
| 1231 | break; |
|
| 1232 | } |
|
| 1233 | case 13: { // Format 13: Many-to-one range mappings |
|
| 1234 | // to be implemented ... |
|
| 1235 | break; |
|