Oliver Schmidtmer created PDFBOX-5430:
-----------------------------------------

             Summary: PDFStreamEngine.showTextStrings with font switch
                 Key: PDFBOX-5430
                 URL: https://issues.apache.org/jira/browse/PDFBOX-5430
             Project: PDFBox
          Issue Type: Bug
            Reporter: Oliver Schmidtmer
         Attachments: keine Vorschau ELO-1228188_20220228_11462_HD_online.pdf

The attached PDF fails to render with an PDFStreamEngine.showTextStrings with 
the following exception:
"java.io.IOException: Unknown type COSName in array for TJ 
operation:COSName\{F3}"

This seems to be a font switch.
{code:java}
diff --git 
"a/pdfbox/src/main/java/org/apache/pdfbox/contentstream/PDFStreamEngine.java" 
"b/pdfbox/src/main/java/org/apache/pdfbox/contentstream/PDFStreamEngine.java"
index e4f2259a5..12edadd2b 100644
--- 
"a/pdfbox/src/main/java/org/apache/pdfbox/contentstream/PDFStreamEngine.java"
+++ 
"b/pdfbox/src/main/java/org/apache/pdfbox/contentstream/PDFStreamEngine.java"
@@ -680,6 +680,18 @@ public abstract class PDFStreamEngine
                 byte[] string = ((COSString)obj).getBytes();
                 showText(string);
             }
+            else if (obj instanceof COSName)
+            {
+                if(((COSName) obj).getName().startsWith("F"))
+                {
+                    textState.setFont(resources.getFont((COSName) obj));
+                }
+                else
+                {
+                    throw new IOException("Unknown type " + 
obj.getClass().getSimpleName()
+                            + " in array for TJ operation:" + obj);
+                }
+            }
             else if (obj instanceof COSArray)
             {
                 LOG.error("Nested arrays are not allowed in an array for TJ 
operation:" + obj);
{code}



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

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

Reply via email to