TTFSubsetter.java (pdfbox-2.0.23-src) | : | TTFSubsetter.java (pdfbox-2.0.24-src) | ||
---|---|---|---|---|
skipping to change at line 718 | skipping to change at line 718 | |||
writeUint32(out, 12); // offset 4 * 2 + 4 | writeUint32(out, 12); // offset 4 * 2 + 4 | |||
// build Format 4 subtable (Unicode BMP) | // build Format 4 subtable (Unicode BMP) | |||
Iterator<Entry<Integer, Integer>> it = uniToGID.entrySet().iterator(); | Iterator<Entry<Integer, Integer>> it = uniToGID.entrySet().iterator(); | |||
Entry<Integer, Integer> lastChar = it.next(); | Entry<Integer, Integer> lastChar = it.next(); | |||
Entry<Integer, Integer> prevChar = lastChar; | Entry<Integer, Integer> prevChar = lastChar; | |||
int lastGid = getNewGlyphId(lastChar.getValue()); | int lastGid = getNewGlyphId(lastChar.getValue()); | |||
// +1 because .notdef is missing in uniToGID | // +1 because .notdef is missing in uniToGID | |||
int[] startCode = new int[uniToGID.size()+1]; | int[] startCode = new int[uniToGID.size()+1]; | |||
int[] endCode = new int[uniToGID.size()+1]; | int[] endCode = new int[startCode.length]; | |||
int[] idDelta = new int[uniToGID.size()+1]; | int[] idDelta = new int[startCode.length]; | |||
int segCount = 0; | int segCount = 0; | |||
while(it.hasNext()) | while(it.hasNext()) | |||
{ | { | |||
Entry<Integer, Integer> curChar2Gid = it.next(); | Entry<Integer, Integer> curChar2Gid = it.next(); | |||
int curGid = getNewGlyphId(curChar2Gid.getValue()); | int curGid = getNewGlyphId(curChar2Gid.getValue()); | |||
// todo: need format Format 12 for non-BMP | // todo: need format Format 12 for non-BMP | |||
if (curChar2Gid.getKey() > 0xFFFF) | if (curChar2Gid.getKey() > 0xFFFF) | |||
{ | { | |||
throw new UnsupportedOperationException("non-BMP Unicode charact er"); | throw new UnsupportedOperationException("non-BMP Unicode charact er"); | |||
End of changes. 1 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added |