Class CMap


  • public class CMap
    extends java.lang.Object
    This class represents a CMap file.
    Author:
    Ben Litchfield
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      byte[] getCodesFromUnicode​(java.lang.String unicode)
      Get the code bytes for an unicode string.
      java.lang.String getName()
      Returns the name of the CMap.
      java.lang.String getOrdering()
      Returns the ordering of the CIDSystemInfo.
      java.lang.String getRegistry()
      Returns the registry of the CIDSystemInfo.
      int getSpaceMapping()
      Returns the mapping for the space character.
      int getSupplement()
      Returns the supplement of the CIDSystemInfo.
      int getType()
      Returns the type of the CMap.
      java.lang.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 hasUnicodeMappings()
      This will tell if this cmap has any Unicode mappings.
      int readCode​(java.io.InputStream in)
      Reads a character code from a string in the content stream.
      void setName​(java.lang.String name)
      Sets the name of the CMap.
      void setOrdering​(java.lang.String newOrdering)
      Sets the ordering of the CIDSystemInfo.
      void setRegistry​(java.lang.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​(java.lang.String version)
      Sets the version of the CMap.
      void setWMode​(int newWMode)
      Sets the WMode of a CMap.
      int toCID​(int code)
      Returns the CID for the given character code.
      java.lang.String toString()  
      java.lang.String toUnicode​(int code)
      Returns the sequence of Unicode characters for the given character code.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Method Detail

      • hasCIDMappings

        public boolean hasCIDMappings()
        This will tell if this cmap has any CID mappings.
        Returns:
        true If there are any CID mappings, false otherwise.
      • hasUnicodeMappings

        public boolean hasUnicodeMappings()
        This will tell if this cmap has any Unicode mappings.
        Returns:
        true If there are any Unicode mappings, false otherwise.
      • toUnicode

        public java.lang.String toUnicode​(int code)
        Returns the sequence of Unicode characters for the given character code.
        Parameters:
        code - character code
        Returns:
        Unicode characters (may be more than one, e.g "fi" ligature)
      • readCode

        public int readCode​(java.io.InputStream in)
                     throws java.io.IOException
        Reads a character code from a string in the content stream.

        See "CMap Mapping" and "Handling Undefined Characters" in PDF32000 for more details.

        Parameters:
        in - string stream
        Returns:
        character code
        Throws:
        java.io.IOException - if there was an error reading the stream or CMap
      • toCID

        public int toCID​(int code)
        Returns the CID for the given character code.
        Parameters:
        code - character code
        Returns:
        CID
      • getCodesFromUnicode

        public byte[] getCodesFromUnicode​(java.lang.String unicode)
        Get the code bytes for an unicode string.
        Parameters:
        unicode - The unicode string.
        Returns:
        the code bytes or null if there is none.
      • 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

        public java.lang.String getName()
        Returns the name of the CMap.
        Returns:
        the CMap name.
      • setName

        public void setName​(java.lang.String name)
        Sets the name of the CMap.
        Parameters:
        name - the CMap name.
      • getVersion

        public java.lang.String getVersion()
        Returns the version of the CMap.
        Returns:
        the CMap version.
      • setVersion

        public void setVersion​(java.lang.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 java.lang.String getRegistry()
        Returns the registry of the CIDSystemInfo.
        Returns:
        the registry.
      • setRegistry

        public void setRegistry​(java.lang.String newRegistry)
        Sets the registry of the CIDSystemInfo.
        Parameters:
        newRegistry - the registry.
      • getOrdering

        public java.lang.String getOrdering()
        Returns the ordering of the CIDSystemInfo.
        Returns:
        the ordering.
      • setOrdering

        public void setOrdering​(java.lang.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.
      • getSpaceMapping

        public int getSpaceMapping()
        Returns the mapping for the space character.
        Returns:
        the mapped code for the space character
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object