Author: tilman
Date: Mon Sep 19 19:26:19 2016
New Revision: 1761489

URL: http://svn.apache.org/viewvc?rev=1761489&view=rev
Log:
PDFBOX-3504: add Symbol encoding for PDType1Font.SYMBOL

Added:
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/SymbolEncoding.java
      - copied, changed from r1761485, 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/ZapfDingbatsEncoding.java
Modified:
    
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType1Font.java

Modified: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType1Font.java
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType1Font.java?rev=1761489&r1=1761488&r2=1761489&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType1Font.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/PDType1Font.java
 Mon Sep 19 19:26:19 2016
@@ -48,6 +48,7 @@ import org.apache.pdfbox.util.Matrix;
 
 
 import static org.apache.pdfbox.pdmodel.font.UniUtil.getUniNameOfCodePoint;
+import org.apache.pdfbox.pdmodel.font.encoding.SymbolEncoding;
 
 /**
  * A PostScript Type 1 Font.
@@ -124,6 +125,10 @@ public class PDType1Font extends PDSimpl
         {
             encoding = ZapfDingbatsEncoding.INSTANCE;
         }
+        else if ("Symbol".equals(baseFont))
+        {
+            encoding = SymbolEncoding.INSTANCE;
+        }
         else
         {
             encoding = WinAnsiEncoding.INSTANCE;

Copied: 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/SymbolEncoding.java
 (from r1761485, 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/ZapfDingbatsEncoding.java)
URL: 
http://svn.apache.org/viewvc/pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/SymbolEncoding.java?p2=pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/SymbolEncoding.java&p1=pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/ZapfDingbatsEncoding.java&r1=1761485&r2=1761489&rev=1761489&view=diff
==============================================================================
--- 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/ZapfDingbatsEncoding.java
 (original)
+++ 
pdfbox/trunk/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/font/encoding/SymbolEncoding.java
 Mon Sep 19 19:26:19 2016
@@ -22,7 +22,7 @@ import org.apache.pdfbox.cos.COSName;
 /**
  * This is an interface to a text encoder.
  */
-public class ZapfDingbatsEncoding extends Encoding
+public class SymbolEncoding extends Encoding
 {
 
     private static final int CHAR_CODE = 0;
@@ -31,208 +31,209 @@ public class ZapfDingbatsEncoding extend
     /**
      * Table of octal character codes and their corresponding names.
      */
-    private static final Object[][] ZAPFDINGBATS_ENCODING_TABLE = {
-        {040, "space"},
-        {041, "a1"},
-        {042, "a2"},
-        {043, "a202"},
-        {044, "a3"},
-        {045, "a4"},
-        {046, "a5"},
-        {047, "a119"},
-        {050, "a118"},
-        {051, "a117"},
-        {052, "a11"},
-        {053, "a12"},
-        {054, "a13"},
-        {055, "a14"},
-        {056, "a15"},
-        {057, "a16"},
-        {060, "a105"},
-        {061, "a17"},
-        {062, "a18"},
-        {063, "a19"},
-        {064, "a20"},
-        {065, "a21"},
-        {066, "a22"},
-        {067, "a23"},
-        {070, "a24"},
-        {071, "a25"},
-        {072, "a26"},
-        {073, "a27"},
-        {074, "a28"},
-        {075, "a6"},
-        {076, "a7"},
-        {077, "a8"},
-        {0100, "a9"},
-        {0101, "a10"},
-        {0102, "a29"},
-        {0103, "a30"},
-        {0104, "a31"},
-        {0105, "a32"},
-        {0106, "a33"},
-        {0107, "a34"},
-        {0110, "a35"},
-        {0111, "a36"},
-        {0112, "a37"},
-        {0113, "a38"},
-        {0114, "a39"},
-        {0115, "a40"},
-        {0116, "a41"},
-        {0117, "a42"},
-        {0120, "a43"},
-        {0121, "a44"},
-        {0122, "a45"},
-        {0123, "a46"},
-        {0124, "a47"},
-        {0125, "a48"},
-        {0126, "a49"},
-        {0127, "a50"},
-        {0130, "a51"},
-        {0131, "a52"},
-        {0132, "a53"},
-        {0133, "a54"},
-        {0134, "a55"},
-        {0135, "a56"},
-        {0136, "a57"},
-        {0137, "a58"},
-        {0140, "a59"},
-        {0141, "a60"},
-        {0142, "a61"},
-        {0143, "a62"},
-        {0144, "a63"},
-        {0145, "a64"},
-        {0146, "a65"},
-        {0147, "a66"},
-        {0150, "a67"},
-        {0151, "a68"},
-        {0152, "a69"},
-        {0153, "a70"},
-        {0154, "a71"},
-        {0155, "a72"},
-        {0156, "a73"},
-        {0157, "a74"},
-        {0160, "a203"},
-        {0161, "a75"},
-        {0162, "a204"},
-        {0163, "a76"},
-        {0164, "a77"},
-        {0165, "a78"},
-        {0166, "a79"},
-        {0167, "a81"},
-        {0170, "a82"},
-        {0171, "a83"},
-        {0172, "a84"},
-        {0173, "a97"},
-        {0174, "a98"},
-        {0175, "a99"},
-        {0176, "a100"},
-        {0241, "a101"},
-        {0242, "a102"},
-        {0243, "a103"},
-        {0244, "a104"},
-        {0245, "a106"},
-        {0246, "a107"},
-        {0247, "a108"},
-        {0250, "a112"},
-        {0251, "a111"},
-        {0252, "a110"},
-        {0253, "a109"},
-        {0254, "a120"},
-        {0255, "a121"},
-        {0256, "a122"},
-        {0257, "a123"},
-        {0260, "a124"},
-        {0261, "a125"},
-        {0262, "a126"},
-        {0263, "a127"},
-        {0264, "a128"},
-        {0265, "a129"},
-        {0266, "a130"},
-        {0267, "a131"},
-        {0270, "a132"},
-        {0271, "a133"},
-        {0272, "a134"},
-        {0273, "a135"},
-        {0274, "a136"},
-        {0275, "a137"},
-        {0276, "a138"},
-        {0277, "a139"},
-        {0300, "a140"},
-        {0301, "a141"},
-        {0302, "a142"},
-        {0303, "a143"},
-        {0304, "a144"},
-        {0305, "a145"},
-        {0306, "a146"},
-        {0307, "a147"},
-        {0310, "a148"},
-        {0311, "a149"},
-        {0312, "a150"},
-        {0313, "a151"},
-        {0314, "a152"},
-        {0315, "a153"},
-        {0316, "a154"},
-        {0317, "a155"},
-        {0320, "a156"},
-        {0321, "a157"},
-        {0322, "a158"},
-        {0323, "a159"},
-        {0324, "a160"},
-        {0325, "a161"},
-        {0326, "a163"},
-        {0327, "a164"},
-        {0330, "a196"},
-        {0331, "a165"},
-        {0332, "a192"},
-        {0333, "a166"},
-        {0334, "a167"},
-        {0335, "a168"},
-        {0336, "a169"},
-        {0337, "a170"},
-        {0340, "a171"},
-        {0341, "a172"},
-        {0342, "a173"},
-        {0343, "a162"},
-        {0344, "a174"},
-        {0345, "a175"},
-        {0346, "a176"},
-        {0347, "a177"},
-        {0350, "a178"},
-        {0351, "a179"},
-        {0352, "a193"},
-        {0353, "a180"},
-        {0354, "a199"},
-        {0355, "a181"},
-        {0356, "a200"},
-        {0357, "a182"},
-        {0361, "a201"},
-        {0362, "a183"},
-        {0363, "a184"},
-        {0364, "a197"},
-        {0365, "a185"},
-        {0366, "a194"},
-        {0367, "a198"},
-        {0370, "a186"},
-        {0371, "a195"},
-        {0372, "a187"},
-        {0373, "a188"},
-        {0374, "a189"},
-        {0375, "a190"},
-        {0376, "a191"}
+    private static final Object[][] SYMBOL_ENCODING_TABLE = {
+        {0101, "Alpha"},
+        {0102, "Beta"},
+        {0103, "Chi"},
+        {0104, "Delta"},
+        {0105, "Epsilon"},
+        {0110, "Eta"},
+        {0240, "Euro"},
+        {0107, "Gamma"},
+        {0301, "Ifraktur"},
+        {0111, "Iota"},
+        {0113, "Kappa"},
+        {0114, "Lambda"},
+        {0115, "Mu"},
+        {0116, "Nu"},
+        {0127, "Omega"},
+        {0117, "Omicron"},
+        {0106, "Phi"},
+        {0120, "Pi"},
+        {0131, "Psi"},
+        {0302, "Rfraktur"},
+        {0122, "Rho"},
+        {0123, "Sigma"},
+        {0124, "Tau"},
+        {0121, "Theta"},
+        {0125, "Upsilon"},
+        {0241, "Upsilon1"},
+        {0130, "Xi"},
+        {0132, "Zeta"},
+        {0300, "aleph"},
+        {0141, "alpha"},
+        {0046, "ampersand"},
+        {0320, "angle"},
+        {0341, "angleleft"},
+        {0361, "angleright"},
+        {0273, "approxequal"},
+        {0253, "arrowboth"},
+        {0333, "arrowdblboth"},
+        {0337, "arrowdbldown"},
+        {0334, "arrowdblleft"},
+        {0336, "arrowdblright"},
+        {0335, "arrowdblup"},
+        {0257, "arrowdown"},
+        {0276, "arrowhorizex"},
+        {0254, "arrowleft"},
+        {0256, "arrowright"},
+        {0255, "arrowup"},
+        {0275, "arrowvertex"},
+        {0052, "asteriskmath"},
+        {0174, "bar"},
+        {0142, "beta"},
+        {0173, "braceleft"},
+        {0175, "braceright"},
+        {0354, "bracelefttp"},
+        {0355, "braceleftmid"},
+        {0356, "braceleftbt"},
+        {0374, "bracerighttp"},
+        {0375, "bracerightmid"},
+        {0376, "bracerightbt"},
+        {0357, "braceex"},
+        {0133, "bracketleft"},
+        {0135, "bracketright"},
+        {0351, "bracketlefttp"},
+        {0352, "bracketleftex"},
+        {0353, "bracketleftbt"},
+        {0371, "bracketrighttp"},
+        {0372, "bracketrightex"},
+        {0373, "bracketrightbt"},
+        {0267, "bullet"},
+        {0277, "carriagereturn"},
+        {0143, "chi"},
+        {0304, "circlemultiply"},
+        {0305, "circleplus"},
+        {0247, "club"},
+        {0072, "colon"},
+        {0054, "comma"},
+        {0100, "congruent"},
+        {0343, "copyrightsans"},
+        {0323, "copyrightserif"},
+        {0260, "degree"},
+        {0144, "delta"},
+        {0250, "diamond"},
+        {0270, "divide"},
+        {0327, "dotmath"},
+        {0070, "eight"},
+        {0316, "element"},
+        {0274, "ellipsis"},
+        {0306, "emptyset"},
+        {0145, "epsilon"},
+        {0075, "equal"},
+        {0272, "equivalence"},
+        {0150, "eta"},
+        {0041, "exclam"},
+        {0044, "existential"},
+        {0065, "five"},
+        {0246, "florin"},
+        {0064, "four"},
+        {0244, "fraction"},
+        {0147, "gamma"},
+        {0321, "gradient"},
+        {0076, "greater"},
+        {0263, "greaterequal"},
+        {0251, "heart"},
+        {0245, "infinity"},
+        {0362, "integral"},
+        {0363, "integraltp"},
+        {0364, "integralex"},
+        {0365, "integralbt"},
+        {0307, "intersection"},
+        {0151, "iota"},
+        {0153, "kappa"},
+        {0154, "lambda"},
+        {0074, "less"},
+        {0243, "lessequal"},
+        {0331, "logicaland"},
+        {0330, "logicalnot"},
+        {0332, "logicalor"},
+        {0340, "lozenge"},
+        {0055, "minus"},
+        {0242, "minute"},
+        {0155, "mu"},
+        {0264, "multiply"},
+        {0071, "nine"},
+        {0317, "notelement"},
+        {0271, "notequal"},
+        {0313, "notsubset"},
+        {0156, "nu"},
+        {0043, "numbersign"},
+        {0167, "omega"},
+        {0166, "omega1"},
+        {0157, "omicron"},
+        {0061, "one"},
+        {0050, "parenleft"},
+        {0051, "parenright"},
+        {0346, "parenlefttp"},
+        {0347, "parenleftex"},
+        {0350, "parenleftbt"},
+        {0366, "parenrighttp"},
+        {0367, "parenrightex"},
+        {0370, "parenrightbt"},
+        {0266, "partialdiff"},
+        {0045, "percent"},
+        {0056, "period"},
+        {0136, "perpendicular"},
+        {0146, "phi"},
+        {0152, "phi1"},
+        {0160, "pi"},
+        {0053, "plus"},
+        {0261, "plusminus"},
+        {0325, "product"},
+        {0314, "propersubset"},
+        {0311, "propersuperset"},
+        {0265, "proportional"},
+        {0171, "psi"},
+        {0077, "question"},
+        {0326, "radical"},
+        {0140, "radicalex"},
+        {0315, "reflexsubset"},
+        {0312, "reflexsuperset"},
+        {0342, "registersans"},
+        {0322, "registerserif"},
+        {0162, "rho"},
+        {0262, "second"},
+        {0073, "semicolon"},
+        {0067, "seven"},
+        {0163, "sigma"},
+        {0126, "sigma1"},
+        {0176, "similar"},
+        {0066, "six"},
+        {0057, "slash"},
+        {0040, "space"},
+        {0252, "spade"},
+        {0047, "suchthat"},
+        {0345, "summation"},
+        {0164, "tau"},
+        {0134, "therefore"},
+        {0161, "theta"},
+        {0112, "theta1"},
+        {0063, "three"},
+        {0344, "trademarksans"},
+        {0324, "trademarkserif"},
+        {0062, "two"},
+        {0137, "underscore"},
+        {0310, "union"},
+        {0042, "universal"},
+        {0165, "upsilon"},
+        {0303, "weierstrass"},
+        {0170, "xi"},
+        {0060, "zero"},
+        {0172, "zeta"}       
     };
     
     /**
      * Singleton instance of this class.
      */
-    public static final ZapfDingbatsEncoding INSTANCE = new 
ZapfDingbatsEncoding();
+    public static final SymbolEncoding INSTANCE = new SymbolEncoding();
 
     /**
      * Constructor.
      */
-    public ZapfDingbatsEncoding()
+    public SymbolEncoding()
     {
-        for (Object[] encodingEntry : ZAPFDINGBATS_ENCODING_TABLE)
+        for (Object[] encodingEntry : SYMBOL_ENCODING_TABLE)
         {
             add((Integer) encodingEntry[CHAR_CODE], 
encodingEntry[CHAR_NAME].toString());
         }
@@ -241,12 +242,12 @@ public class ZapfDingbatsEncoding extend
     @Override
     public COSBase getCOSObject()
     {
-        return COSName.getPDFName("ZapfDingbatsEncoding");
+        return COSName.getPDFName("SymbolEncoding");
     }
 
     @Override
     public String getEncodingName()
     {
-        return "ZapfDingbatsEncoding";
+        return "SymbolEncoding";
     }
 }


Reply via email to