Uploaded image for project: 'PDFBox'
  1. PDFBox
  2. PDFBOX-4212 Rewrite formatter for interactive form fields
  3. PDFBOX-3138

PDTextField doesn't accept any Hebrew characters as new value

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Open
    • Major
    • Resolution: Unresolved
    • 2.0.0
    • None
    • AcroForm, FontBox
    • None
    • Eclipse 4.2.2, Windows 7 Pro, JRE 1.8.0_05

    Description

      Trying to set a UTF-8 encoded Hebrew string as the value of a PDTextField fails with the following exception:

      Exception in thread "main" java.lang.IllegalArgumentException: No glyph for U+05D7 in font AdobeHebrew-Regular
      	at org.apache.pdfbox.pdmodel.font.PDType1CFont.encode(PDType1CFont.java:300)
      	at org.apache.pdfbox.pdmodel.font.PDFont.encode(PDFont.java:283)
      	at org.apache.pdfbox.pdmodel.PDPageContentStream.showText(PDPageContentStream.java:341)
      	at org.apache.pdfbox.pdmodel.interactive.form.PlainTextFormatter.format(PlainTextFormatter.java:213)
      	at org.apache.pdfbox.pdmodel.interactive.form.AppearanceGeneratorHelper.insertGeneratedAppearance(AppearanceGeneratorHelper.java:373)
      	at org.apache.pdfbox.pdmodel.interactive.form.AppearanceGeneratorHelper.setAppearanceContent(AppearanceGeneratorHelper.java:237)
      	at org.apache.pdfbox.pdmodel.interactive.form.AppearanceGeneratorHelper.setAppearanceValue(AppearanceGeneratorHelper.java:144)
      	at org.apache.pdfbox.pdmodel.interactive.form.PDTextField.constructAppearances(PDTextField.java:263)
      	at org.apache.pdfbox.pdmodel.interactive.form.PDTerminalField.applyChange(PDTerminalField.java:221)
      	at org.apache.pdfbox.pdmodel.interactive.form.PDTextField.setValue(PDTextField.java:218)
      	at SetHebrewFieldValueTest.main(SetHebrewFieldValueTest.java:22)
      

      I've tried using multiple fonts for the field, all of which can handle Hebrew characters just fine, and got the same results in all of them.
      See attached files for a demonstration of the issue.

      Attachments

        1. SetHebrewFieldValueTest.java
          0.8 kB
          Gilad Denneboom
        2. Test.pdf
          65 kB
          Gilad Denneboom
        3. Test.txt
          0.0 kB
          Gilad Denneboom
        4. Test-3-filled.pdf
          60 kB
          John Hewson

        Issue Links

          Activity

            People

              msahyoun Maruan Sahyoun
              giladd Gilad Denneboom
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated: