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

Henning Saul commented on PDFBOX-1049:
--------------------------------------

The following check in PDFont seems to handle that situation... Not sure 
whether this is a good idea, though.

    public float getFontWidth( int charCode )
    {
        float width = -1;
        int firstChar = getFirstChar();
        int lastChar = getLastChar();
        if (charCode >= firstChar && charCode <= lastChar)
        {
            List<Float> widths = getWidths();
            // widths might be null in some cases?
            if(widths != null)
                width = widths.get(charCode-firstChar).floatValue();


> NPE in PDFont.getFontWidth()
> ----------------------------
>
>                 Key: PDFBOX-1049
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-1049
>             Project: PDFBox
>          Issue Type: Bug
>          Components: PDModel
>    Affects Versions: 1.6.0
>            Reporter: Henning Saul
>         Attachments: 48022.pdf
>
>
> Trying to run ExtractText on the attached PDF will result in *a lot* of the 
> following Exceptions:
> Jun 24, 2011 11:44:54 AM org.apache.pdfbox.util.PDFStreamEngine 
> processOperator
> WARNING: java.lang.NullPointerException
> java.lang.NullPointerException
>  at org.apache.pdfbox.pdmodel.font.PDFont.getFontWidth(PDFont.java:787)
>  at 
> org.apache.pdfbox.pdmodel.font.PDSimpleFont.getFontWidth(PDSimpleFont.java:1
>  at 
> org.apache.pdfbox.util.PDFStreamEngine.processEncodedText(PDFStreamEngine.ja
>  at org.apache.pdfbox.util.operator.ShowText.process(ShowText.java:45)
>  at 
> org.apache.pdfbox.util.PDFStreamEngine.processOperator(PDFStreamEngine.java:
>  at 
> org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java
>  at 
> org.apache.pdfbox.util.PDFStreamEngine.processSubStream(PDFStreamEngine.java
>  at 
> org.apache.pdfbox.util.PDFStreamEngine.processStream(PDFStreamEngine.java:22
>  at 
> org.apache.pdfbox.util.PDFTextStripper.processPage(PDFTextStripper.java:442)
>  at 
> org.apache.pdfbox.util.PDFTextStripper.processPages(PDFTextStripper.java:366
>  at org.apache.pdfbox.util.PDFTextStripper.writeText(PDFTextStripper.java:322)
>  at org.apache.pdfbox.ExtractText.startExtraction(ExtractText.java:256)
>  at org.apache.pdfbox.ExtractText.main(ExtractText.java:76)

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to