|
@@ 707-715 (lines=9) @@
|
| 704 |
|
$offset += 4; |
| 705 |
|
for ($k = $startCharCode; $k <= $endCharCode; ++$k) { |
| 706 |
|
$is32idx = floor($c / 8); |
| 707 |
|
if ((isset($is32[$is32idx])) AND (($is32[$is32idx] & (1 << (7 - ($c % 8)))) == 0)) { |
| 708 |
|
$c = $k; |
| 709 |
|
} else { |
| 710 |
|
// 32 bit format |
| 711 |
|
// convert to decimal (http://www.unicode.org/faq//utf_bom.html#utf16-4) |
| 712 |
|
//LEAD_OFFSET = (0xD800 - (0x10000 >> 10)) = 55232 |
| 713 |
|
//SURROGATE_OFFSET = (0x10000 - (0xD800 << 10) - 0xDC00) = -56613888 |
| 714 |
|
$c = ((55232 + ($k >> 10)) << 10) + (0xDC00 + ($k & 0x3FF)) -56613888; |
| 715 |
|
} |
| 716 |
|
$ctg[$c] = 0; |
| 717 |
|
++$startGlyphID; |
| 718 |
|
} |
|
@@ 1180-1188 (lines=9) @@
|
| 1177 |
|
$offset += 4; |
| 1178 |
|
for ($k = $startCharCode; $k <= $endCharCode; ++$k) { |
| 1179 |
|
$is32idx = floor($c / 8); |
| 1180 |
|
if ((isset($is32[$is32idx])) AND (($is32[$is32idx] & (1 << (7 - ($c % 8)))) == 0)) { |
| 1181 |
|
$c = $k; |
| 1182 |
|
} else { |
| 1183 |
|
// 32 bit format |
| 1184 |
|
// convert to decimal (http://www.unicode.org/faq//utf_bom.html#utf16-4) |
| 1185 |
|
//LEAD_OFFSET = (0xD800 - (0x10000 >> 10)) = 55232 |
| 1186 |
|
//SURROGATE_OFFSET = (0x10000 - (0xD800 << 10) - 0xDC00) = -56613888 |
| 1187 |
|
$c = ((55232 + ($k >> 10)) << 10) + (0xDC00 + ($k & 0x3FF)) -56613888; |
| 1188 |
|
} |
| 1189 |
|
if (isset($subsetchars[$c])) { |
| 1190 |
|
$subsetglyphs[$startGlyphID] = true; |
| 1191 |
|
} |