Class Encoding
- java.lang.Object
-
- com.tom_roush.pdfbox.pdmodel.font.encoding.Encoding
-
- All Implemented Interfaces:
COSObjectable
- Direct Known Subclasses:
BuiltInEncoding,DictionaryEncoding,MacExpertEncoding,MacRomanEncoding,StandardEncoding,SymbolEncoding,Type1Encoding,WinAnsiEncoding,ZapfDingbatsEncoding
public abstract class Encoding extends Object implements COSObjectable
A PostScript encoding vector, maps character codes to glyph names.
-
-
Constructor Summary
Constructors Constructor Description Encoding()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidadd(int code, String name)This will add a character encoding.booleancontains(int code)Determines if the encoding has a mapping for the given code value.booleancontains(String name)Determines if the encoding has a mapping for the given name value.Map<Integer,String>getCodeToNameMap()Returns an unmodifiable view of the code -> name mapping.abstract StringgetEncodingName()Returns the name of this encoding.static EncodinggetInstance(COSName name)This will get an encoding by name.StringgetName(int code)This will take a character code and get the name from the code.Map<String,Integer>getNameToCodeMap()Returns an unmodifiable view of the name -> code mapping.protected voidoverwrite(int code, String name)This will add a character encoding.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.tom_roush.pdfbox.pdmodel.common.COSObjectable
getCOSObject
-
-
-
-
Field Detail
-
CHAR_CODE
protected static final int CHAR_CODE
- See Also:
- Constant Field Values
-
CHAR_NAME
protected static final int CHAR_NAME
- See Also:
- Constant Field Values
-
codeToName
protected final Map<Integer,String> codeToName
code-to-name map. Derived classes should not modify the map after class construction.
-
-
Method Detail
-
getInstance
public static Encoding getInstance(COSName name)
This will get an encoding by name. May return null.- Parameters:
name- The name of the encoding to get.- Returns:
- The encoding that matches the name.
-
getCodeToNameMap
public Map<Integer,String> getCodeToNameMap()
Returns an unmodifiable view of the code -> name mapping.- Returns:
- the code -> name map
-
getNameToCodeMap
public Map<String,Integer> getNameToCodeMap()
Returns an unmodifiable view of the name -> code mapping. More than one name may map to the same code.- Returns:
- the name -> code map
-
add
protected void add(int code, String name)This will add a character encoding. An already existing mapping is preserved when creating the reverse mapping. Should only be used during construction of the class.- Parameters:
code- character codename- PostScript glyph name- See Also:
overwrite(int, String)
-
overwrite
protected void overwrite(int code, String name)This will add a character encoding. An already existing mapping is overwritten when creating the reverse mapping.- Parameters:
code- character codename- PostScript glyph name- See Also:
add(int, String)
-
contains
public boolean contains(String name)
Determines if the encoding has a mapping for the given name value.- Parameters:
name- PostScript glyph name
-
contains
public boolean contains(int code)
Determines if the encoding has a mapping for the given code value.- Parameters:
code- character code
-
getName
public String getName(int code)
This will take a character code and get the name from the code.- Parameters:
code- character code- Returns:
- PostScript glyph name
-
getEncodingName
public abstract String getEncodingName()
Returns the name of this encoding.
-
-