[ 
https://issues.apache.org/jira/browse/PDFBOX-3623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ccouturi updated PDFBOX-3623:
-----------------------------
    Description: 
When I render the attached pdf (second page), a UnsupportedOperationException 
is thrown: OTF fonts do not have a glyf table.

Exception: 
{code}
java.lang.UnsupportedOperationException: OTF fonts do not have a glyf table
        at org.apache.fontbox.ttf.OpenTypeFont.getGlyph(OpenTypeFont.java:71)
        at org.apache.fontbox.ttf.TTFParser.parseTables(TTFParser.java:209)
        at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:150)
        at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:79)
        at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:27)
        at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:106)
        at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:73)
        at 
org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:117)
        at 
org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:69)
        at 
org.apache.pdfbox.pdmodel.font.PDFontFactory.createDescendantFont(PDFontFactory.java:125)
        at 
org.apache.pdfbox.pdmodel.font.PDType0Font.<init>(PDType0Font.java:128)
        at 
org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont(PDFontFactory.java:83)
        at org.apache.pdfbox.pdmodel.PDResources.getFont(PDResources.java:143)
        at 
org.apache.pdfbox.contentstream.operator.text.SetFontAndSize.process(SetFontAndSize.java:60)
        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)
{code}

Code to reproduce :
{code}
public static void main(String args[]) throws IOException {
        PDDocument doc = null;
        String path = "glyf_table.pdf";
        int pageIndex = 2;
        File file = new File(path);
        try (InputStream stream = new FileInputStream(file)) {
            doc = PDDocument.load(stream, PDF_LOADING_MEMORY_SETTING);
            PDFRenderer renderer = new PDFRenderer(doc);
            renderer.renderImageWithDPI(pageIndex - 1, 150, ImageType.RGB);
        } finally {
            if (doc != null) {
                doc.close();
            }
        }
    }
{code}

Thank you

  was:
When I render the attached pdf (second page), a UnsupportedOperationException 
is thrown: OTF fonts do not have a glyf table.

Exception: 
```
java.lang.UnsupportedOperationException: OTF fonts do not have a glyf table
        at org.apache.fontbox.ttf.OpenTypeFont.getGlyph(OpenTypeFont.java:71)
        at org.apache.fontbox.ttf.TTFParser.parseTables(TTFParser.java:209)
        at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:150)
        at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:79)
        at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:27)
        at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:106)
        at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:73)
        at 
org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:117)
        at 
org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:69)
        at 
org.apache.pdfbox.pdmodel.font.PDFontFactory.createDescendantFont(PDFontFactory.java:125)
        at 
org.apache.pdfbox.pdmodel.font.PDType0Font.<init>(PDType0Font.java:128)
        at 
org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont(PDFontFactory.java:83)
        at org.apache.pdfbox.pdmodel.PDResources.getFont(PDResources.java:143)
        at 
org.apache.pdfbox.contentstream.operator.text.SetFontAndSize.process(SetFontAndSize.java:60)
        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)
```

Code to reproduce :
```
public static void main(String args[]) throws IOException {
        PDDocument doc = null;
        String path = "glyf_table.pdf";
        int pageIndex = 2;
        File file = new File(path);
        try (InputStream stream = new FileInputStream(file)) {
            doc = PDDocument.load(stream, PDF_LOADING_MEMORY_SETTING);
            PDFRenderer renderer = new PDFRenderer(doc);
            renderer.renderImageWithDPI(pageIndex - 1, 150, ImageType.RGB);
        } finally {
            if (doc != null) {
                doc.close();
            }
        }
    }
```

Thank you


> PDFRenderer: java.lang.UnsupportedOperationException: OTF fonts do not have a 
> glyf table
> ----------------------------------------------------------------------------------------
>
>                 Key: PDFBOX-3623
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-3623
>             Project: PDFBox
>          Issue Type: Bug
>    Affects Versions: 2.1.0
>            Reporter: ccouturi
>         Attachments: glyf_table.pdf
>
>
> When I render the attached pdf (second page), a UnsupportedOperationException 
> is thrown: OTF fonts do not have a glyf table.
> Exception: 
> {code}
> java.lang.UnsupportedOperationException: OTF fonts do not have a glyf table
>       at org.apache.fontbox.ttf.OpenTypeFont.getGlyph(OpenTypeFont.java:71)
>       at org.apache.fontbox.ttf.TTFParser.parseTables(TTFParser.java:209)
>       at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:150)
>       at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:79)
>       at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:27)
>       at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:106)
>       at org.apache.fontbox.ttf.OTFParser.parse(OTFParser.java:73)
>       at 
> org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:117)
>       at 
> org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:69)
>       at 
> org.apache.pdfbox.pdmodel.font.PDFontFactory.createDescendantFont(PDFontFactory.java:125)
>       at 
> org.apache.pdfbox.pdmodel.font.PDType0Font.<init>(PDType0Font.java:128)
>       at 
> org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont(PDFontFactory.java:83)
>       at org.apache.pdfbox.pdmodel.PDResources.getFont(PDResources.java:143)
>       at 
> org.apache.pdfbox.contentstream.operator.text.SetFontAndSize.process(SetFontAndSize.java:60)
>       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)
> {code}
> Code to reproduce :
> {code}
> public static void main(String args[]) throws IOException {
>         PDDocument doc = null;
>         String path = "glyf_table.pdf";
>         int pageIndex = 2;
>         File file = new File(path);
>         try (InputStream stream = new FileInputStream(file)) {
>             doc = PDDocument.load(stream, PDF_LOADING_MEMORY_SETTING);
>             PDFRenderer renderer = new PDFRenderer(doc);
>             renderer.renderImageWithDPI(pageIndex - 1, 150, ImageType.RGB);
>         } finally {
>             if (doc != null) {
>                 doc.close();
>             }
>         }
>     }
> {code}
> Thank you



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

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

Reply via email to