blob: 8a292178287a1324508fa636160fe817c6c41757 [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.apache.fontbox.cff;
/**
* This is specialized CFFCharset. It's used if the CharsetId of a font is set to 1.
*
* @author Villu Ruusmann
*/
public final class CFFExpertCharset extends CFFCharsetType1
{
private static final int CHAR_CODE = 0;
private static final int CHAR_NAME = 1;
private CFFExpertCharset()
{
// Table of character codes and their corresponding names.
Object[][] cffExpertCharsetTable = {
{0, ".notdef"},
{1, "space"},
{229, "exclamsmall"},
{230, "Hungarumlautsmall"},
{231, "dollaroldstyle"},
{232, "dollarsuperior"},
{233, "ampersandsmall"},
{234, "Acutesmall"},
{235, "parenleftsuperior"},
{236, "parenrightsuperior"},
{237, "twodotenleader"},
{238, "onedotenleader"},
{13, "comma"},
{14, "hyphen"},
{15, "period"},
{99, "fraction"},
{239, "zerooldstyle"},
{240, "oneoldstyle"},
{241, "twooldstyle"},
{242, "threeoldstyle"},
{243, "fouroldstyle"},
{244, "fiveoldstyle"},
{245, "sixoldstyle"},
{246, "sevenoldstyle"},
{247, "eightoldstyle"},
{248, "nineoldstyle"},
{27, "colon"},
{28, "semicolon"},
{249, "commasuperior"},
{250, "threequartersemdash"},
{251, "periodsuperior"},
{252, "questionsmall"},
{253, "asuperior"},
{254, "bsuperior"},
{255, "centsuperior"},
{256, "dsuperior"},
{257, "esuperior"},
{258, "isuperior"},
{259, "lsuperior"},
{260, "msuperior"},
{261, "nsuperior"},
{262, "osuperior"},
{263, "rsuperior"},
{264, "ssuperior"},
{265, "tsuperior"},
{266, "ff"},
{109, "fi"},
{110, "fl"},
{267, "ffi"},
{268, "ffl"},
{269, "parenleftinferior"},
{270, "parenrightinferior"},
{271, "Circumflexsmall"},
{272, "hyphensuperior"},
{273, "Gravesmall"},
{274, "Asmall"},
{275, "Bsmall"},
{276, "Csmall"},
{277, "Dsmall"},
{278, "Esmall"},
{279, "Fsmall"},
{280, "Gsmall"},
{281, "Hsmall"},
{282, "Ismall"},
{283, "Jsmall"},
{284, "Ksmall"},
{285, "Lsmall"},
{286, "Msmall"},
{287, "Nsmall"},
{288, "Osmall"},
{289, "Psmall"},
{290, "Qsmall"},
{291, "Rsmall"},
{292, "Ssmall"},
{293, "Tsmall"},
{294, "Usmall"},
{295, "Vsmall"},
{296, "Wsmall"},
{297, "Xsmall"},
{298, "Ysmall"},
{299, "Zsmall"},
{300, "colonmonetary"},
{301, "onefitted"},
{302, "rupiah"},
{303, "Tildesmall"},
{304, "exclamdownsmall"},
{305, "centoldstyle"},
{306, "Lslashsmall"},
{307, "Scaronsmall"},
{308, "Zcaronsmall"},
{309, "Dieresissmall"},
{310, "Brevesmall"},
{311, "Caronsmall"},
{312, "Dotaccentsmall"},
{313, "Macronsmall"},
{314, "figuredash"},
{315, "hypheninferior"},
{316, "Ogoneksmall"},
{317, "Ringsmall"},
{318, "Cedillasmall"},
{158, "onequarter"},
{155, "onehalf"},
{163, "threequarters"},
{319, "questiondownsmall"},
{320, "oneeighth"},
{321, "threeeighths"},
{322, "fiveeighths"},
{323, "seveneighths"},
{324, "onethird"},
{325, "twothirds"},
{326, "zerosuperior"},
{150, "onesuperior"},
{164, "twosuperior"},
{169, "threesuperior"},
{327, "foursuperior"},
{328, "fivesuperior"},
{329, "sixsuperior"},
{330, "sevensuperior"},
{331, "eightsuperior"},
{332, "ninesuperior"},
{333, "zeroinferior"},
{334, "oneinferior"},
{335, "twoinferior"},
{336, "threeinferior"},
{337, "fourinferior"},
{338, "fiveinferior"},
{339, "sixinferior"},
{340, "seveninferior"},
{341, "eightinferior"},
{342, "nineinferior"},
{343, "centinferior"},
{344, "dollarinferior"},
{345, "periodinferior"},
{346, "commainferior"},
{347, "Agravesmall"},
{348, "Aacutesmall"},
{349, "Acircumflexsmall"},
{350, "Atildesmall"},
{351, "Adieresissmall"},
{352, "Aringsmall"},
{353, "AEsmall"},
{354, "Ccedillasmall"},
{355, "Egravesmall"},
{356, "Eacutesmall"},
{357, "Ecircumflexsmall"},
{358, "Edieresissmall"},
{359, "Igravesmall"},
{360, "Iacutesmall"},
{361, "Icircumflexsmall"},
{362, "Idieresissmall"},
{363, "Ethsmall"},
{364, "Ntildesmall"},
{365, "Ogravesmall"},
{366, "Oacutesmall"},
{367, "Ocircumflexsmall"},
{368, "Otildesmall"},
{369, "Odieresissmall"},
{370, "OEsmall"},
{371, "Oslashsmall"},
{372, "Ugravesmall"},
{373, "Uacutesmall"},
{374, "Ucircumflexsmall"},
{375, "Udieresissmall"},
{376, "Yacutesmall"},
{377, "Thornsmall"},
{378, "Ydieresissmall"}
};
int gid = 0;
for (Object[] charsetEntry : cffExpertCharsetTable)
{
addSID(gid++, (Integer) charsetEntry[CHAR_CODE], charsetEntry[CHAR_NAME].toString());
}
}
/**
* Returns an instance of the CFFExpertCharset class.
* @return an instance of CFFExpertCharset
*/
public static CFFExpertCharset getInstance()
{
return CFFExpertCharset.INSTANCE;
}
private static final CFFExpertCharset INSTANCE = new CFFExpertCharset();
}