[ https://issues.apache.org/jira/browse/PDFBOX-2012?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tilman Hausherr updated PDFBOX-2012: ------------------------------------ Issue Type: Wish (was: Bug) > Extend CMAPEncodingEntry API > ---------------------------- > > Key: PDFBOX-2012 > URL: https://issues.apache.org/jira/browse/PDFBOX-2012 > Project: PDFBox > Issue Type: Wish > Components: FontBox > Affects Versions: 1.8.4, 2.0.0 > Reporter: Philip Helger > > Please extend the API with the following 2 methods (incl. a minor performance > improvement): > ### Eclipse Workspace Patch 1.0 > #P fontbox > Index: src/main/java/org/apache/fontbox/ttf/CMAPEncodingEntry.java > =================================================================== > --- src/main/java/org/apache/fontbox/ttf/CMAPEncodingEntry.java > (revision 1583927) > +++ src/main/java/org/apache/fontbox/ttf/CMAPEncodingEntry.java > (working copy) > @@ -436,7 +436,7 @@ > for (int i = 0; i < 256; i++) > { > subHeaderKeys[i] = data.readUnsignedShort(); > - maxSubHeaderIndex = Math.max(maxSubHeaderIndex, (int) > (subHeaderKeys[i] / 8)); > + maxSubHeaderIndex = Math.max(maxSubHeaderIndex, subHeaderKeys[i] > / 8); > } > > // ---- Read all SubHeaders to avoid useless seek on DataSource > @@ -556,18 +556,32 @@ > */ > public int getGlyphId(int characterCode) > { > - if (characterCodeToGlyphId.containsKey(characterCode)) > - { > - return characterCodeToGlyphId.get(characterCode); > - } > - else > - { > - return 0; > - } > + Integer glyphId = characterCodeToGlyphId.get(characterCode); > + return glyphId == null ? 0 : glyphId.intValue (); > } > + > + /** > + * Get the minimum character code for which a glyph id is present > + * > + * @return The minimum character code for which a glyph id is present or > -1 if no character code is present. > + */ > + public int getMinimumCharacterCode() > + { > + return characterCodeToGlyphId.isEmpty () ? -1 : Collections.min > (characterCodeToGlyphId.keySet ()).intValue (); > + } > > /** > + * Get the maximum character code for which a glyph id is present > * > + * @return The maximum character code for which a glyph id is present or > -1 if no character code is present. > + */ > + public int getMaximumCharacterCode() > + { > + return characterCodeToGlyphId.isEmpty () ? -1 : Collections.max > (characterCodeToGlyphId.keySet ()).intValue (); > + } > + > + /** > + * > * Class used to manage CMap - Format 2. > * > */ -- This message was sent by Atlassian JIRA (v6.2#6252)