org.apache.fontbox.cmap
Class CMap

java.lang.Object
  extended by org.apache.fontbox.cmap.CMap

public class CMap
extends Object

This class represents a CMap file.

Version:
$Revision: 1.3 $
Author:
Ben Litchfield (ben@benlitchfield.com)

Constructor Summary
CMap()
          Creates a new instance of CMap.
 
Method Summary
 void addCIDMapping(int src, String dest)
          This will add a CID mapping.
 void addCIDRange(char from, char to, int cid)
          This will add a CID Range.
 void addCodespaceRange(CodespaceRange range)
          This will add a codespace range.
 void addMapping(byte[] src, String dest)
          This will add a mapping.
 List<CodespaceRange> getCodeSpaceRanges()
          Getter for property codeSpaceRanges.
 String getName()
          Returns the name of the CMap.
 String getOrdering()
          Returns the ordering of the CIDSystemInfo.
 String getRegistry()
          Returns the registry of the CIDSystemInfo.
 int getSupplement()
          Returns the supplement of the CIDSystemInfo.
 int getType()
          Returns the type of the CMap.
 String getVersion()
          Returns the version of the CMap.
 int getWMode()
          Returns the WMode of a CMap.
 boolean hasCIDMappings()
          This will tell if this cmap has any CID mappings.
 boolean hasOneByteMappings()
          This will tell if this cmap has any one byte mappings.
 boolean hasTwoByteMappings()
          This will tell if this cmap has any two byte mappings.
 boolean isInCodeSpaceRanges(byte[] code)
          Check whether the given byte array is in codespace ranges or not.
 boolean isInCodeSpaceRanges(byte[] code, int offset, int length)
          Check whether the given byte array is in codespace ranges or not.
 String lookup(byte[] code, int offset, int length)
          This will perform a lookup into the map.
 String lookup(int code, int length)
          This will perform a lookup into the map.
 int lookupCID(byte[] code, int offset, int length)
          This will perform a lookup into the CID map.
 String lookupCID(int cid)
          This will perform a lookup into the CID map.
 void setName(String name)
          Sets the name of the CMap.
 void setOrdering(String newOrdering)
          Sets the ordering of the CIDSystemInfo.
 void setRegistry(String newRegistry)
          Sets the registry of the CIDSystemInfo.
 void setSupplement(int newSupplement)
          Sets the supplement of the CIDSystemInfo.
 void setType(int type)
          Sets the type of the CMap.
 void setVersion(String version)
          Sets the version of the CMap.
 void setWMode(int newWMode)
          Sets the WMode of a CMap.
 void useCmap(CMap cmap)
          Implementation of the usecmap operator.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CMap

public CMap()
Creates a new instance of CMap.

Method Detail

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

public String lookup(byte[] code,
                     int offset,
                     int length)
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

public String lookup(int code,
                     int length)
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

public String lookupCID(int cid)
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.
Returns:
The CID that matches the lookup.

addMapping

public void addMapping(byte[] src,
                       String dest)
                throws IOException
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

public void addCIDMapping(int src,
                          String dest)
                   throws IOException
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:
src - The CID Range to be added.
dest - The starting cid.

addCodespaceRange

public void addCodespaceRange(CodespaceRange range)
This will add a codespace range.

Parameters:
range - A single codespace range.

getCodeSpaceRanges

public List<CodespaceRange> getCodeSpaceRanges()
Getter for property codeSpaceRanges.

Returns:
Value of property codeSpaceRanges.

useCmap

public void useCmap(CMap cmap)
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:

setWMode

public void setWMode(int newWMode)
Sets the WMode of a CMap.

Parameters:
newWMode - the new WMode.

getName

public String getName()
Returns the name of the CMap.

Returns:
the CMap name.

setName

public void setName(String name)
Sets the name of the CMap.

Parameters:
name - the CMap name.

getVersion

public String getVersion()
Returns the version of the CMap.

Returns:
the CMap version.

setVersion

public void setVersion(String version)
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

public String getRegistry()
Returns the registry of the CIDSystemInfo.

Returns:
the registry.

setRegistry

public void setRegistry(String newRegistry)
Sets the registry of the CIDSystemInfo.

Parameters:
newRegistry - the registry.

getOrdering

public String getOrdering()
Returns the ordering of the CIDSystemInfo.

Returns:
the ordering.

setOrdering

public void setOrdering(String newOrdering)
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.


Copyright © 2002-2012 Apache Software Foundation. All Rights Reserved.