Author: tilman
Date: Tue Feb 25 08:01:50 2025
New Revision: 1924036
URL: http://svn.apache.org/viewvc?rev=1924036&view=rev
Log:
PDFBOX-5963: add logging + comment
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/DictionaryEncoding.java
Modified:
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/DictionaryEncoding.java
URL:
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/DictionaryEncoding.java?rev=1924036&r1=1924035&r2=1924036&view=diff
==============================================================================
---
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/DictionaryEncoding.java
(original)
+++
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/DictionaryEncoding.java
Tue Feb 25 08:01:50 2025
@@ -18,6 +18,8 @@ package org.apache.pdfbox.pdmodel.font.e
import java.util.HashMap;
import java.util.Map;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.pdfbox.cos.COSArray;
import org.apache.pdfbox.cos.COSBase;
import org.apache.pdfbox.cos.COSDictionary;
@@ -31,6 +33,8 @@ import org.apache.pdfbox.cos.COSNumber;
*/
public class DictionaryEncoding extends Encoding
{
+ private static final Logger LOG =
LogManager.getLogger(DictionaryEncoding.class);
+
private final COSDictionary encoding;
private final Encoding baseEncoding;
private final Map<Integer, String> differences = new HashMap<>();
@@ -80,6 +84,10 @@ public class DictionaryEncoding extends
baseEncoding = Encoding.getInstance(name); // null when the name
is invalid
if (baseEncoding != null)
{
+ // PDFBOX-5963
+ // PDF Specification: "Differences array shall specify the
complete character
+ // encoding for this font" but other viewers read it, thus we
do too.
+ LOG.warn("/BaseEncoding in type 3 font");
codeToName.putAll(baseEncoding.codeToName);
inverted.putAll(baseEncoding.inverted);
}