Author: tilman
Date: Tue Jul 22 11:11:06 2025
New Revision: 1927396

Log:
PDFBOX-6015: add test

Modified:
   
pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/ttf/TTFSubsetterTest.java

Modified: 
pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/ttf/TTFSubsetterTest.java
==============================================================================
--- 
pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/ttf/TTFSubsetterTest.java 
    Tue Jul 22 11:11:03 2025        (r1927395)
+++ 
pdfbox/trunk/fontbox/src/test/java/org/apache/fontbox/ttf/TTFSubsetterTest.java 
    Tue Jul 22 11:11:06 2025        (r1927396)
@@ -367,4 +367,25 @@ class TTFSubsetterTest
             assertEquals(0, subset.getWidth("uni200C"), "ZWNJ width should be 
zero");
         }
     }
+
+    /**
+     * PDFBOX-6015: test font with 0/1 cmap.
+     *
+     * @throws IOException 
+     */
+    @Test
+    void testPDFBox6015() throws IOException
+    {
+        try (TrueTypeFont ttf = new TTFParser()
+                .parse(new 
RandomAccessReadBufferedFile("target/fonts/Keyboard.ttf")))
+        {
+            CmapLookup unicodeCmapLookup = ttf.getUnicodeCmapLookup();
+            assertEquals(185, unicodeCmapLookup.getGlyphId('a'));
+            assertEquals(210, unicodeCmapLookup.getGlyphId('z'));
+            assertEquals(159, unicodeCmapLookup.getGlyphId('A'));
+            assertEquals(184, unicodeCmapLookup.getGlyphId('Z'));
+            assertEquals(49, unicodeCmapLookup.getGlyphId('0'));
+            assertEquals(58, unicodeCmapLookup.getGlyphId('9'));
+        }
+    }
 }

Reply via email to