Author: tilman Date: Sun Jul 5 04:19:53 2026 New Revision: 1935898 Log: PDFBOX-4951: replace DejaVu with Arimo for better visual result after feedback from Volker Kunert
Added: pdfbox/trunk/pdfbox-layout-awt/src/test/resources/ttf/Arimo-Regular.ttf (contents, props changed) Modified: pdfbox/trunk/pdfbox-layout-awt/src/test/appended-resources/META-INF/LICENSE pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379FormTest.java pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379Test.java Modified: pdfbox/trunk/pdfbox-layout-awt/src/test/appended-resources/META-INF/LICENSE ============================================================================== --- pdfbox/trunk/pdfbox-layout-awt/src/test/appended-resources/META-INF/LICENSE Sun Jul 5 04:10:03 2026 (r1935897) +++ pdfbox/trunk/pdfbox-layout-awt/src/test/appended-resources/META-INF/LICENSE Sun Jul 5 04:19:53 2026 (r1935898) @@ -107,6 +107,12 @@ Copyright 2022 The Noto Project Authors SIL Open Font License, see above +Arimo font: + +Copyright 2026 The Arimo Project Authors (https://github.com/googlefonts/arimo) +SIL Open Font License, see above + + Licenses for DejaVu font(s) (see also https://www.apache.org/legal/resolved.html ): Fonts are (c) Bitstream (see below). DejaVu changes are in public domain. Modified: pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379FormTest.java ============================================================================== --- pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379FormTest.java Sun Jul 5 04:10:03 2026 (r1935897) +++ pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379FormTest.java Sun Jul 5 04:19:53 2026 (r1935898) @@ -93,15 +93,17 @@ class GlyphLayoutDin91379FormTest String outputFilename = "target/GlyphLayoutDIN91379Form.pdf"; - String fontSizeString = "10.5"; + String fontSizeString = "12"; - InputStream fontStream = GlyphLayoutDin91379FormTest.class.getResourceAsStream("/ttf/DejaVuSans.ttf"); + InputStream fontStream = GlyphLayoutDin91379FormTest.class.getResourceAsStream("/ttf/Arimo-Regular.ttf"); File pdfForm = new File(GlyphLayoutDin91379FormTest.class.getResource("/pdf/PdfForm.pdf").toURI()); try (PDDocument doc = Loader.loadPDF(pdfForm)) { // embedSubset has to be set to false - PDType0Font font = glyphLayoutProcessor.loadFont(doc, fontStream, false); + // last parameter is just for test coverage + PDType0Font font = glyphLayoutProcessor.loadFont(doc, fontStream, + false, new GlyphLayoutFontLoaderAwt.FontOptions()); PDDocumentCatalog docCatalog = doc.getDocumentCatalog(); PDAcroForm acroForm = docCatalog.getAcroForm(); Modified: pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379Test.java ============================================================================== --- pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379Test.java Sun Jul 5 04:10:03 2026 (r1935897) +++ pdfbox/trunk/pdfbox-layout-awt/src/test/java/org/apache/pdfbox/glyphlayout/GlyphLayoutDin91379Test.java Sun Jul 5 04:19:53 2026 (r1935898) @@ -49,7 +49,7 @@ class GlyphLayoutDin91379Test static String LATIN_CHARS_DIN_91379 = "DIN 91379: Characters in Unicode for the electronic processing of names \n" + "and data exchange in Europe\n" - + "Font used: DejaVuSans.ttf\n" + + "Font used: Arimo-Regular.ttf\n" + "\n" + "bll; Latin Letters (normative)\n" + "A B C D E F G H I J K L M N O P Q R S T U V W X Y Z a b c d e f g h i j k l m n o p q r s t u v w x y z\n" @@ -101,7 +101,8 @@ class GlyphLayoutDin91379Test try (PDDocument doc = new PDDocument()) { - InputStream fontStream = GlyphLayoutDin91379Test.class.getResourceAsStream("/ttf/DejaVuSans.ttf"); + // Works poorly with DejaVu Sans, see discussion on PDFBOX-4951 on 5.7.2026 + InputStream fontStream = GlyphLayoutDin91379Test.class.getResourceAsStream("/ttf/Arimo-Regular.ttf"); PDType0Font font = glyphLayoutProcessor.loadFont(doc, fontStream); PDPage page = new PDPage(); Added: pdfbox/trunk/pdfbox-layout-awt/src/test/resources/ttf/Arimo-Regular.ttf ============================================================================== Binary file. No diff available.
