You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "John Hewson (JIRA)" <ji...@apache.org> on 2015/02/04 02:04:08 UTC

[jira] [Comment Edited] (PDFBOX-2650) Type1Equivalent: TrueType must use 'cmap' when 'post' table is empty

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

John Hewson edited comment on PDFBOX-2650 at 2/4/15 1:01 AM:
-------------------------------------------------------------

>From the mailing list:

{quote}
thank you for the quick response! I just tried pdfbox-app-2.0.0-20150201.120136-1008.jar and now I get the below shown exception while converting the pdf to an image. Hope it helps you to track it down.

Andreas
{quote}

{code}
D:\__test>java -jar pdfbox-app-2.0.0-20150201.120136-1008.jar PDFToImage rg-1234567890BA.pdf
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
       at java.lang.String.codePointAt(Unknown Source)
       at org.apache.fontbox.ttf.TrueTypeFont.parseUniName(TrueTypeFont.java:509)
       at org.apache.fontbox.ttf.TrueTypeFont.nameToGID(TrueTypeFont.java:479)
       at org.apache.fontbox.ttf.TrueTypeFont.hasGlyph(TrueTypeFont.java:560)
       at org.apache.pdfbox.pdmodel.font.PDType1Font.codeToName(PDType1Font.java:446)
       at org.apache.pdfbox.pdmodel.font.PDType1Font.getWidthFromFont(PDType1Font.java:338)
       at org.apache.pdfbox.pdmodel.font.PDFont.getWidth(PDFont.java:241)
       at org.apache.pdfbox.pdmodel.font.PDFont.getDisplacement(PDFont.java:211)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.showText(PDFStreamEngine.java:687)
       at org.apache.pdfbox.rendering.PageDrawer.showText(PageDrawer.java:280)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.showTextStrings(PDFStreamEngine.java:601)
       at org.apache.pdfbox.contentstream.operator.text.ShowTextAdjusted.process(ShowTextAdjusted.java:38)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:803)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:465)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:439)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
       at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:163)
       at org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:204)
       at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:137)
       at org.apache.pdfbox.rendering.PDFRenderer.renderImageWithDPI(PDFRenderer.java:96)
       at org.apache.pdfbox.tools.PDFToImage.main(PDFToImage.java:236)
       at org.apache.pdfbox.tools.PDFBox.main(PDFBox.java:89)

{code}


was (Author: jahewson):
>From the mailing list:

{code}
thank you for the quick response! I just tried pdfbox-app-2.0.0-20150201.120136-1008.jar and now I get the below shown exception while converting the pdf to an image. Hope it helps you to track it down.

Andreas

D:\__test>java -jar pdfbox-app-2.0.0-20150201.120136-1008.jar PDFToImage rg-1234567890BA.pdf
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 0
       at java.lang.String.codePointAt(Unknown Source)
       at org.apache.fontbox.ttf.TrueTypeFont.parseUniName(TrueTypeFont.java:509)
       at org.apache.fontbox.ttf.TrueTypeFont.nameToGID(TrueTypeFont.java:479)
       at org.apache.fontbox.ttf.TrueTypeFont.hasGlyph(TrueTypeFont.java:560)
       at org.apache.pdfbox.pdmodel.font.PDType1Font.codeToName(PDType1Font.java:446)
       at org.apache.pdfbox.pdmodel.font.PDType1Font.getWidthFromFont(PDType1Font.java:338)
       at org.apache.pdfbox.pdmodel.font.PDFont.getWidth(PDFont.java:241)
       at org.apache.pdfbox.pdmodel.font.PDFont.getDisplacement(PDFont.java:211)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.showText(PDFStreamEngine.java:687)
       at org.apache.pdfbox.rendering.PageDrawer.showText(PageDrawer.java:280)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.showTextStrings(PDFStreamEngine.java:601)
       at org.apache.pdfbox.contentstream.operator.text.ShowTextAdjusted.process(ShowTextAdjusted.java:38)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:803)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:465)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:439)
       at org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:149)
       at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:163)
       at org.apache.pdfbox.rendering.PDFRenderer.renderPage(PDFRenderer.java:204)
       at org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:137)
       at org.apache.pdfbox.rendering.PDFRenderer.renderImageWithDPI(PDFRenderer.java:96)
       at org.apache.pdfbox.tools.PDFToImage.main(PDFToImage.java:236)
       at org.apache.pdfbox.tools.PDFBox.main(PDFBox.java:89)

{code}

> Type1Equivalent: TrueType must use 'cmap' when 'post' table is empty
> --------------------------------------------------------------------
>
>                 Key: PDFBOX-2650
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-2650
>             Project: PDFBox
>          Issue Type: Bug
>          Components: FontBox
>    Affects Versions: 2.0.0
>            Reporter: John Hewson
>            Assignee: John Hewson
>             Fix For: 2.0.0
>
>         Attachments: rg-1234567890BA.pdf
>
>
> Originally from Andreas Lüdtke on the mailing list:
> All glyphs are missing in the Helvetica font on Windows 8.1.
> {code}
> D:\__test>java -jar pdfbox-app-2.0.0-20150129.180809-996.jar PDFToImage rg-1234567890BA.pdf
> Jan 31, 2015 2:34:34 PM org.apache.pdfbox.rendering.font.Type1Glyph2D getPathForCharacterCode
> WARNUNG: No glyph for 77 (.notdef) in font Helvetica
> Jan 31, 2015 2:34:34 PM org.apache.pdfbox.rendering.font.Type1Glyph2D getPathForCharacterCode
> WARNUNG: No glyph for 97 (.notdef) in font Helvetica
> Jan 31, 2015 2:34:34 PM org.apache.pdfbox.rendering.font.Type1Glyph2D getPathForCharacterCode
> WARNUNG: No glyph for 114 (.notdef) in font Helvetica
> Jan 31, 2015 2:34:34 PM org.apache.pdfbox.rendering.font.Type1Glyph2D getPathForCharacterCode
> WARNUNG: No glyph for 107 (.notdef) in font Helvetica
> Jan 31, 2015 2:34:34 PM org.apache.pdfbox.rendering.font.Type1Glyph2D getPathForCharacterCode
> WARNUNG: No glyph for 117 (.notdef) in font Helvetica
> {code}
> Some research shows that this is because the 'post' table in Arial.ttf no longer contains names (it's now format 3), which FontBox was relying on. We must fallback to the 'cmap' table in this case.



--
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