[ https://issues.apache.org/jira/browse/PDFBOX-2774?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14511311#comment-14511311 ]
Maruan Sahyoun commented on PDFBOX-2774: ---------------------------------------- [~jahewson] [~tilman] would one of you be able to take a look into that - I'm not familiar with the font handling code. > Encoding issue in PDTrueTypeFont for Euro symbol > ------------------------------------------------ > > Key: PDFBOX-2774 > URL: https://issues.apache.org/jira/browse/PDFBOX-2774 > Project: PDFBox > Issue Type: Bug > Components: PDModel > Affects Versions: 2.0.0 > Reporter: Maruan Sahyoun > Attachments: ArialMT.ttf > > > From the users mailing list when trying to set a field value to the Euro sign > the following exception occurs > {code} > Exception in thread "main" java.lang.IllegalArgumentException: No glyph for > U+20AC in font Arial > at > org.apache.pdfbox.pdmodel.font.PDTrueTypeFont.encode(PDTrueTypeFont.java:267) > at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:268) > at org.apache.pdfbox.pdmodel.font.PDFont.getStringWidth(PDFont.java:297) > at > org.apache.pdfbox.pdmodel.interactive.form.AppearanceGeneratorHelper.calculateHorizontalOffset(AppearanceGeneratorHelper.java:564) > at > org.apache.pdfbox.pdmodel.interactive.form.AppearanceGeneratorHelper.insertGeneratedAppearance(AppearanceGeneratorHelper.java:305) > at > org.apache.pdfbox.pdmodel.interactive.form.AppearanceGeneratorHelper.createAppearanceContent(AppearanceGeneratorHelper.java:228) > at > org.apache.pdfbox.pdmodel.interactive.form.AppearanceGeneratorHelper.setAppearanceValue(AppearanceGeneratorHelper.java:203) > at > org.apache.pdfbox.pdmodel.interactive.form.AppearanceGenerator.generateFieldAppearances(AppearanceGenerator.java:61) > at > org.apache.pdfbox.pdmodel.interactive.form.PDField.updateFieldAppearances(PDField.java:121) > at > org.apache.pdfbox.pdmodel.interactive.form.PDTextField.setValue(PDTextField.java:289) > {code} > A small test loading the extracted font {{ArialMT}} directly with > {code} > PDTrueTypeFont font2 = PDTrueTypeFont.loadTTF(document, new > File("ArialMT.ttf")); > font2.encode("€"); > {code} > gives the same error whereas using > {code} > PDType0Font font = PDType0Font.load(document, new File("ArialMT.ttf")); > font.encode("€"); > {code} > the error doesn't happen. -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org For additional commands, e-mail: dev-h...@pdfbox.apache.org