You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ja...@apache.org on 2014/08/27 00:54:33 UTC

svn commit: r1620758 - in /pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox: encoding/MacRomanEncoding.java encoding/WinAnsiEncoding.java pdmodel/font/PDTrueTypeFont.java

Author: jahewson
Date: Tue Aug 26 22:54:33 2014
New Revision: 1620758

URL: http://svn.apache.org/r1620758
Log:
PDFBOX-2262: Handle additional encoding entries correctly

Modified:
    pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/MacRomanEncoding.java
    pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/WinAnsiEncoding.java
    pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDTrueTypeFont.java

Modified: pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/MacRomanEncoding.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/MacRomanEncoding.java?rev=1620758&r1=1620757&r2=1620758&view=diff
==============================================================================
--- pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/MacRomanEncoding.java (original)
+++ pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/MacRomanEncoding.java Tue Aug 26 22:54:33 2014
@@ -247,9 +247,7 @@ public class MacRomanEncoding extends En
         add(0172, "z");
         add(060, "zero");
         // adding an additional mapping as defined in Appendix D of the pdf spec
-        // we must not add it to both mappings as the nameToCode mapping
-        // wouldn't be unique
-        codeToName.put(0312, "space");
+        add(0312, "space");
     }
     
     /**

Modified: pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/WinAnsiEncoding.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/WinAnsiEncoding.java?rev=1620758&r1=1620757&r2=1620758&view=diff
==============================================================================
--- pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/WinAnsiEncoding.java (original)
+++ pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/encoding/WinAnsiEncoding.java Tue Aug 26 22:54:33 2014
@@ -256,15 +256,13 @@ public class WinAnsiEncoding extends Enc
         add(0236, "zcaron");
         add(060, "zero");
         // adding some additional mappings as defined in Appendix D of the pdf spec
-        // we must not add them to both mappings as the nameToCode mapping
-        // wouldn't be unique
-        codeToName.put(0240, "space");
-        codeToName.put(0255, "hyphen");
+        add(0240, "space");
+        add(0255, "hyphen");
         for (int i = 041; i <= 255; i++)
         {
             if (!codeToName.containsKey(i))
             {
-                codeToName.put(i, "bullet");
+                add(i, "bullet");
             }
         }
     }

Modified: pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDTrueTypeFont.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDTrueTypeFont.java?rev=1620758&r1=1620757&r2=1620758&view=diff
==============================================================================
--- pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDTrueTypeFont.java (original)
+++ pdfbox/branches/no-awt/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDTrueTypeFont.java Tue Aug 26 22:54:33 2014
@@ -55,7 +55,10 @@ public class PDTrueTypeFont extends PDSi
         Map<Integer, String> codeToName = MacOSRomanEncoding.INSTANCE.getCodeToNameMap();
         for (Map.Entry<Integer, String> entry : codeToName.entrySet())
         {
-            INVERTED_MACOS_ROMAN.put(entry.getValue(), entry.getKey());
+            if (!INVERTED_MACOS_ROMAN.containsKey(entry.getValue()))
+            {
+                INVERTED_MACOS_ROMAN.put(entry.getValue(), entry.getKey());
+            }
         }
     }