in src/java/org/apache/fop/render/pdf/pdfbox/MergeTTFonts.java [329:353]
private void reorderGlyphs() throws IOException {
Map<Integer, Integer> remap = new HashMap<>();
Map<Integer, Glyph> glyphMap = new TreeMap<>();
int i = 0;
for (Glyph glyph : added.values()) {
if (!glyph.composed) {
glyphMap.put(i, glyph);
remap.put(glyph.origGlyphIndex, i);
i++;
}
}
for (Glyph glyph : added.values()) {
if (glyph.composed) {
glyphMap.put(i, glyph);
remap.put(glyph.origGlyphIndex, i);
i++;
}
}
for (Glyph glyph : glyphMap.values()) {
if (glyph.composite && glyph.data.length > 0) {
remapComposite(glyph.data, remap);
}
}
added = glyphMap;
}