Thomas Gawehn created PDFBOX-4878:
-------------------------------------

             Summary: Call to Dictionary.encoding throws NullPointerException 
for some PDF's
                 Key: PDFBOX-4878
                 URL: https://issues.apache.org/jira/browse/PDFBOX-4878
             Project: PDFBox
          Issue Type: Bug
          Components: PDModel
    Affects Versions: 2.0.20
            Reporter: Thomas Gawehn
         Attachments: test.pdf

Wenn iterating all fonts in a PDF a call to 
PDSimpleFont.getEncoding().getEncodingName () throws a NullPointerException 
inside the library code for the attached sample-PDF.

The situation can be reproduced, when running the following loop for the 
attached PDF (test.pdf):

{{{{}}}}document = PDDocument.load (file);

int pages = document.getNumberOfPages ();

for (int i = 0; i < pages; ++i)
 {
 PDPage page = document.getPage (i);

PDResources resources = page.getResources ();
 if (resources == null)
 continue;

Iterator<COSName> iter = resources.getFontNames ().iterator ();

while (iter.hasNext ())
 {
 COSName cos = iter.next ();
 try
 {
 PDFont font = resources.getFont (cos);
 if (font instanceof PDSimpleFont)
 {
 PDSimpleFont simpleFont = (PDSimpleFont) font;
 Encoding encoding = simpleFont.getEncoding ();
 if (encoding != null)
 {
 try
 {
 System.out.println ("* encoding=" + encoding.getEncodingName ());
}
 catch (Exception e)
 {
 e.printStackTrace ();
}
 }

}
 }
 catch (IOException e)
 {
 e.printStackTrace ();
 }
 }
 }

document.close ();

{{}}{{ }}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to