You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "ASF subversion and git services (JIRA)" <ji...@apache.org> on 2016/09/24 15:26:20 UTC

[jira] [Commented] (PDFBOX-3511) NullPointerException - missing glyph description

    [ https://issues.apache.org/jira/browse/PDFBOX-3511?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15519192#comment-15519192 ] 

ASF subversion and git services commented on PDFBOX-3511:
---------------------------------------------------------

Commit 1762126 from [~tilman] in branch 'pdfbox/trunk'
[ https://svn.apache.org/r1762126 ]

PDFBOX-3511: avoid NullPointerException

> NullPointerException - missing glyph description
> ------------------------------------------------
>
>                 Key: PDFBOX-3511
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-3511
>             Project: PDFBox
>          Issue Type: Bug
>          Components: FontBox
>    Affects Versions: 2.0.0, 2.0.1, 2.0.2, 2.0.3
>            Reporter: Daniel Persson
>            Priority: Minor
>
> Hi Team.
> We process many PDF documents every day and today we ran into a file that we couldn't create an image to. For some reason it has glyphs that didn't have any glyph description. 
> In GlyfCompositeDescript there is atleast two functions (Line 258, 271) that fetch an GlyphDescription from a map like this:
> GlyphDescription gd = descriptions.get(c.getGlyphIndex());
> Then the functions use the description without a null check which results in an NullPointer exception.
> Exception in thread "main" java.lang.NullPointerException
>         at org.apache.fontbox.ttf.GlyfCompositeDescript.getCompositeCompEndPt(GlyfCompositeDescript.java:272)
>         at org.apache.fontbox.ttf.GlyfCompositeDescript.getEndPtOfContours(GlyfCompositeDescript.java:126)
>         at org.apache.fontbox.ttf.GlyphRenderer.describe(GlyphRenderer.java:72)
>         at org.apache.fontbox.ttf.GlyphRenderer.getPath(GlyphRenderer.java:56)
>         at org.apache.fontbox.ttf.GlyphData.getPath(GlyphData.java:116)
>         at org.apache.pdfbox.pdmodel.font.PDCIDFontType2.getPath(PDCIDFontType2.java:446)
>         at org.apache.pdfbox.pdmodel.font.PDType0Font.getPath(PDType0Font.java:506)
>         at org.apache.pdfbox.rendering.TTFGlyph2D.getPathForGID(TTFGlyph2D.java:137)
>         at org.apache.pdfbox.rendering.TTFGlyph2D.getPathForCharacterCode(TTFGlyph2D.java:93)
>         at org.apache.pdfbox.rendering.PageDrawer.drawGlyph2D(PageDrawer.java:353)
>         at org.apache.pdfbox.rendering.PageDrawer.showFontGlyph(PageDrawer.java:334)
>         at org.apache.pdfbox.contentstream.PDFStreamEngine.showGlyph(PDFStreamEngine.java:744)
>         at org.apache.pdfbox.contentstream.PDFStreamEngine.showText(PDFStreamEngine.java:701)
>         at org.apache.pdfbox.contentstream.PDFStreamEngine.showTextString(PDFStreamEngine.java:564)
>         at org.apache.pdfbox.contentstream.operator.text.ShowText.process(ShowText.java:55)
>         at org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:815)
>         at org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:472)
>         at org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:446)
>         at org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
>         at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:189)
>         at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:145)
>         at org.apache.pdfbox.rendering.PDFRenderer.renderImageWithDPI(PDFRenderer.java:94)
>         at org.apache.pdfbox.tools.PDFToImage.main(PDFToImage.java:236)
>         at org.apache.pdfbox.tools.PDFBox.main(PDFBox.java:94)
> So far we have only seen one file with this issue in our processing. I've tried to run the PDFToImage with all versions of PDFBox 2 and they fail. 
> PDFBox 1.8.12 gives some error output but generates an working image.
> Sep 23, 2016 7:36:53 AM org.apache.pdfbox.util.PDFStreamEngine processOperator
> INFO: unsupported/disabled operation: BDC
> Sep 23, 2016 7:36:53 AM org.apache.pdfbox.util.PDFStreamEngine processOperator
> INFO: unsupported/disabled operation: EMC
> Sep 23, 2016 7:36:55 AM org.apache.pdfbox.pdmodel.font.PDSimpleFont drawString
> WARNING: Changing font on <•> from <null> to the default font
> Sep 23, 2016 7:36:55 AM org.apache.pdfbox.pdmodel.font.PDSimpleFont drawString
> WARNING: Changing font on <•> from <null> to the default font
> Sep 23, 2016 7:36:55 AM org.apache.pdfbox.pdmodel.font.PDSimpleFont drawString
> WARNING: Changing font on <•> from <null> to the default font
> Sep 23, 2016 7:36:55 AM org.apache.pdfbox.pdmodel.font.PDSimpleFont drawString
> WARNING: Changing font on <•> from <null> to the default font
> Sep 23, 2016 7:36:55 AM org.apache.pdfbox.pdmodel.font.PDSimpleFont drawString
> WARNING: Changing font on <•> from <null> to the default font
> Sep 23, 2016 7:36:55 AM org.apache.pdfbox.util.PDFImageWriter writeImage
> INFO: Writing: [Removed Identifer]_01_07_201609231.jpg
> At the time of writing the bug report the file is to fresh to disclose. Might be able to add it in a week or so depending on the customer, and if it's required for the resolution of this issue.
> Thanks for your time.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org