Package org.apache.fontbox.cmap
Class CMap
java.lang.Object
org.apache.fontbox.cmap.CMap
This class represents a CMap file.
- Author:
- Ben Litchfield (ben@benlitchfield.com)
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCIDMapping(int src, String dest) This will add a CID mapping.voidaddCIDRange(char from, char to, int cid) This will add a CID Range.voidaddCodespaceRange(CodespaceRange range) This will add a codespace range.voidaddMapping(byte[] src, String dest) This will add a mapping.Getter for property codeSpaceRanges.getName()Returns the name of the CMap.Returns the ordering of the CIDSystemInfo.Returns the registry of the CIDSystemInfo.intReturns the mapping for the space character.intReturns the supplement of the CIDSystemInfo.intgetType()Returns the type of the CMap.Returns the version of the CMap.intgetWMode()Returns the WMode of a CMap.booleanThis will tell if this cmap has any CID mappings.booleanThis will tell if this cmap has any one byte mappings.booleanThis will tell if this cmap has any two byte mappings.booleanisInCodeSpaceRanges(byte[] code) Check whether the given byte array is in codespace ranges or not.booleanisInCodeSpaceRanges(byte[] code, int offset, int length) Check whether the given byte array is in codespace ranges or not.lookup(byte[] code, int offset, int length) This will perform a lookup into the map.lookup(int code, int length) This will perform a lookup into the map.intlookupCID(byte[] code, int offset, int length) This will perform a lookup into the CID map.lookupCID(int cid) This will perform a lookup into the CID map.voidSets the name of the CMap.voidsetOrdering(String newOrdering) Sets the ordering of the CIDSystemInfo.voidsetRegistry(String newRegistry) Sets the registry of the CIDSystemInfo.voidsetSupplement(int newSupplement) Sets the supplement of the CIDSystemInfo.voidsetType(int type) Sets the type of the CMap.voidsetVersion(String version) Sets the version of the CMap.voidsetWMode(int newWMode) Sets the WMode of a CMap.voidImplementation of the usecmap operator.
-
Constructor Details
-
CMap
public CMap()Creates a new instance of CMap.
-
-
Method Details
-
hasOneByteMappings
public boolean hasOneByteMappings()This will tell if this cmap has any one byte mappings.- Returns:
- true If there are any one byte mappings, false otherwise.
-
hasTwoByteMappings
public boolean hasTwoByteMappings()This will tell if this cmap has any two byte mappings.- Returns:
- true If there are any two byte mappings, false otherwise.
-
hasCIDMappings
public boolean hasCIDMappings()This will tell if this cmap has any CID mappings.- Returns:
- true If there are any CID mappings, false otherwise.
-
lookup
This will perform a lookup into the map.- Parameters:
code- The code used to lookup.offset- The offset into the byte array.length- The length of the data we are getting.- Returns:
- The string that matches the lookup.
-
lookup
This will perform a lookup into the map.- Parameters:
code- The code used to lookup.length- The length of the data we are getting.- Returns:
- The string that matches the lookup.
-
lookupCID
This will perform a lookup into the CID map.- Parameters:
cid- The CID used to lookup.- Returns:
- The string that matches the lookup.
-
lookupCID
public int lookupCID(byte[] code, int offset, int length) This will perform a lookup into the CID map.- Parameters:
code- The code used to lookup.offset- the offset into the array.length- the length of the subarray.- Returns:
- The CID that matches the lookup.
-
addMapping
This will add a mapping.- Parameters:
src- The src to the mapping.dest- The dest to the mapping.- Throws:
IOException- if the src is invalid.
-
addCIDMapping
This will add a CID mapping.- Parameters:
src- The CID to the mapping.dest- The dest to the mapping.- Throws:
IOException- if the src is invalid.
-
addCIDRange
public void addCIDRange(char from, char to, int cid) This will add a CID Range.- Parameters:
from- starting charactor of the CID range.to- ending character of the CID range.cid- the cid to be started with.
-
addCodespaceRange
This will add a codespace range.- Parameters:
range- A single codespace range.
-
getCodeSpaceRanges
Getter for property codeSpaceRanges.- Returns:
- Value of property codeSpaceRanges.
-
useCmap
Implementation of the usecmap operator. This will copy all of the mappings from one cmap to another.- Parameters:
cmap- The cmap to load mappings from.
-
isInCodeSpaceRanges
public boolean isInCodeSpaceRanges(byte[] code) Check whether the given byte array is in codespace ranges or not.- Parameters:
code- The byte array to look for in the codespace range.- Returns:
- true if the given byte array is in the codespace range.
-
isInCodeSpaceRanges
public boolean isInCodeSpaceRanges(byte[] code, int offset, int length) Check whether the given byte array is in codespace ranges or not.- Parameters:
code- The byte array to look for in the codespace range.offset- The starting offset within the byte array.length- The length of the part of the array.- Returns:
- true if the given byte array is in the codespace range.
-
getWMode
public int getWMode()Returns the WMode of a CMap. 0 represents a horizontal and 1 represents a vertical orientation.- Returns:
- the wmode
-
setWMode
public void setWMode(int newWMode) Sets the WMode of a CMap.- Parameters:
newWMode- the new WMode.
-
getName
Returns the name of the CMap.- Returns:
- the CMap name.
-
setName
Sets the name of the CMap.- Parameters:
name- the CMap name.
-
getVersion
Returns the version of the CMap.- Returns:
- the CMap version.
-
setVersion
Sets the version of the CMap.- Parameters:
version- the CMap version.
-
getType
public int getType()Returns the type of the CMap.- Returns:
- the CMap type.
-
setType
public void setType(int type) Sets the type of the CMap.- Parameters:
type- the CMap type.
-
getRegistry
Returns the registry of the CIDSystemInfo.- Returns:
- the registry.
-
setRegistry
Sets the registry of the CIDSystemInfo.- Parameters:
newRegistry- the registry.
-
getOrdering
Returns the ordering of the CIDSystemInfo.- Returns:
- the ordering.
-
setOrdering
Sets the ordering of the CIDSystemInfo.- Parameters:
newOrdering- the ordering.
-
getSupplement
public int getSupplement()Returns the supplement of the CIDSystemInfo.- Returns:
- the supplement.
-
setSupplement
public void setSupplement(int newSupplement) Sets the supplement of the CIDSystemInfo.- Parameters:
newSupplement- the supplement.
-
getSpaceMapping
public int getSpaceMapping()Returns the mapping for the space character.- Returns:
- the mapped code for the space character
-