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

Andreas Lehmkühler commented on PDFBOX-5721:
--------------------------------------------

There are two exceptions while opening the mentioned pdf using PDFDebugger 
{code}
 Error  [PDFont] Could not read ToUnicode CMap in font DroidSansFallbackFull
    java.io.IOException: java.lang.IllegalArgumentException: The start and the 
end values must not have different lengths.
        at 
org.apache.fontbox.cmap.CMapParser.parseBegincodespacerange(CMapParser.java:268)
        at org.apache.fontbox.cmap.CMapParser.parse(CMapParser.java:110)
        at 
org.apache.pdfbox.pdmodel.font.CMapManager.parseCMap(CMapManager.java:72)
        at org.apache.pdfbox.pdmodel.font.PDFont.readCMap(PDFont.java:220)
        at 
org.apache.pdfbox.pdmodel.font.PDFont.loadUnicodeCmap(PDFont.java:144)
        at org.apache.pdfbox.pdmodel.font.PDFont.<init>(PDFont.java:113)
        at 
org.apache.pdfbox.pdmodel.font.PDType0Font.<init>(PDType0Font.java:73)
        at 
org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont(PDFontFactory.java:96)
        at org.apache.pdfbox.pdmodel.PDResources.getFont(PDResources.java:170)
        at 
org.apache.pdfbox.contentstream.operator.text.SetFontAndSize.process(SetFontAndSize.java:72)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:892)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:530)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:505)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:152)
        at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:285)
        at 
org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:330)
        at 
org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:532)
        at 
org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:1)
        at javax.swing.SwingWorker$1.call(SwingWorker.java:295)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at javax.swing.SwingWorker.run(SwingWorker.java:334)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:750)
Caused by: java.lang.IllegalArgumentException: The start and the end values 
must not have different lengths.
        at org.apache.fontbox.cmap.CodespaceRange.<init>(CodespaceRange.java:50)
        at 
org.apache.fontbox.cmap.CMapParser.parseBegincodespacerange(CMapParser.java:264)
        ... 23 more
{code}

and 

{code}
Warning  [PDCIDFontType2] Could not read embedded OTF for font 
DroidSansFallbackFull
    java.io.EOFException
        at 
org.apache.fontbox.ttf.TTFDataStream.readUnsignedShort(TTFDataStream.java:154)
        at org.apache.fontbox.ttf.PostScriptTable.read(PostScriptTable.java:79)
        at org.apache.fontbox.ttf.TrueTypeFont.readTable(TrueTypeFont.java:365)
        at org.apache.fontbox.ttf.TTFParser.parseTables(TTFParser.java:165)
        at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:144)
        at org.apache.fontbox.ttf.TTFParser.parse(TTFParser.java:66)
        at 
org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:123)
        at 
org.apache.pdfbox.pdmodel.font.PDCIDFontType2.<init>(PDCIDFontType2.java:72)
        at 
org.apache.pdfbox.pdmodel.font.PDFontFactory.createDescendantFont(PDFontFactory.java:138)
        at 
org.apache.pdfbox.pdmodel.font.PDType0Font.<init>(PDType0Font.java:97)
        at 
org.apache.pdfbox.pdmodel.font.PDFontFactory.createFont(PDFontFactory.java:96)
        at org.apache.pdfbox.pdmodel.PDResources.getFont(PDResources.java:170)
        at 
org.apache.pdfbox.contentstream.operator.text.SetFontAndSize.process(SetFontAndSize.java:72)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processOperator(PDFStreamEngine.java:892)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processStreamOperators(PDFStreamEngine.java:530)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processStream(PDFStreamEngine.java:505)
        at 
org.apache.pdfbox.contentstream.PDFStreamEngine.processPage(PDFStreamEngine.java:152)
        at org.apache.pdfbox.rendering.PageDrawer.drawPage(PageDrawer.java:285)
        at 
org.apache.pdfbox.rendering.PDFRenderer.renderImage(PDFRenderer.java:330)
        at 
org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:532)
        at 
org.apache.pdfbox.debugger.pagepane.PagePane$RenderWorker.doInBackground(PagePane.java:1)
        at javax.swing.SwingWorker$1.call(SwingWorker.java:295)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at javax.swing.SwingWorker.run(SwingWorker.java:334)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:750)
{code}

> The embedded font DroidSansFallbackFull reports an error when parsing, and 
> finally uses lastResortFont, resulting in garbled fonts.
> -----------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: PDFBOX-5721
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-5721
>             Project: PDFBox
>          Issue Type: Bug
>    Affects Versions: 2.0.30
>            Reporter: liu
>            Priority: Major
>         Attachments: CMISG Mutual NDA_Enepath_09Nov23_signed6.pdf, image0.jpg
>
>
> demo:
> public static void main(String[] args) throws IOException, 
> InterruptedException {
>               File file = new File("C:\\Users\\LYCIT\\Downloads\\CMISG Mutual 
> NDA_Enepath_09Nov23_signed6.pdf");
>               final PDDocument load = PDDocument.load(file, 
> MemoryUsageSetting.setupTempFileOnly()
>                               .setTempDir(new File("D:\\fcs\\test")));
>               PDFRenderer renderer = new PDFRenderer(load);
>               renderer.setSubsamplingAllowed(true);
>               int pageIndex = 0;
>               float scale = 2f;
>               BufferedImage bufferedImage = renderer.renderImage(pageIndex, 
> scale, ImageType.RGB);
>               FileOutputStream fos = null;
>               try {
>                       fos = new FileOutputStream(new 
> File("D:\\fcs\\test/test6/image" + pageIndex + ".jpg"));
>                       ImageIO.write(bufferedImage, "jpg", fos);
>               } finally {
>                       if (fos != null) {
>                               fos.close();
>                       }
>               }
>               Thread.sleep(6000000);
>       }
> pdf:CMISG Mutual NDA_Enepath_09Nov23_signed6.pdf
> garbled fonts:image0.jpg



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to