[ https://issues.apache.org/jira/browse/PDFBOX-490?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13071592#comment-13071592 ]
Jens Bruhn commented on PDFBOX-490: ----------------------------------- My own workaround is attached. If someone has a better workaround or some more ideas, I would really like to see them here. It still doesn't work for special characters with "Symbol"-Font (created with LibreOffice PDF-Export). Any ideas? Greetings, jens Class PDTrueTypeFont: private final Map<String, String> _normalizedFontNameSet = new HashMap<String, String>(); private final Map<String, Font> _fontCache = new HashMap<String, Font>(); @Override public Font getawtFont() throws IOException { PDFontDescriptorDictionary fd = (PDFontDescriptorDictionary) getFontDescriptor(); final String fontName = fd.getFontName(); if (_fontCache.keySet().contains(fontName)) { awtFont = _fontCache.get(fontName); } else { final String fontAndStyle = fontName.substring(fontName.indexOf("+") + 1, fontName.length() - 2); final String pureFontName = fontAndStyle.contains("-") ? fontAndStyle.substring(0, fontAndStyle.indexOf("-")) : fontAndStyle; final String pureStyleName = fontAndStyle.contains("-") ? fontAndStyle.substring(fontAndStyle.indexOf("-") + 1) : ""; int style = 0; if (pureStyleName.toLowerCase().contains("bold")) { style |= Font.BOLD; } if (pureStyleName.toLowerCase().contains("italic")) { style |= Font.ITALIC; } final String newFontName = getLocalFontName(pureFontName); awtFont = new Font(newFontName == null ? "Arial" : newFontName, style, 10); _fontCache.put(fontName, awtFont); } return awtFont; } private String getLocalFontName(final String name) { final Iterator<String> iterator = _normalizedFontNameSet.keySet().iterator(); final String compareName = name.toLowerCase(); String result = null; while (iterator.hasNext()) { final String fontName = iterator.next(); if (compareName.contains(fontName)) { result = _normalizedFontNameSet.get(fontName); break; } } return result; } > Pdf Printing of text from embedded fonts > ---------------------------------------- > > Key: PDFBOX-490 > URL: https://issues.apache.org/jira/browse/PDFBOX-490 > Project: PDFBox > Issue Type: Bug > Components: FontBox > Affects Versions: 0.8.0-incubator > Environment: Windows XP, JRE 1.6 > Reporter: Steve Poling > Assignee: Andreas Lehmkühler > Attachments: filled.pdf > > > When printing from utility PrintPdf, text is rendered in the wrong typeface. > The correct typeface is embedded within the PDF (Embedded Subset) as a > TrueType font with an ANSI encoding. It may be noted that the AcroFields in a > Courier typeface render correctly. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira