CMap
Date: 2017-05-25

org.apache.fontbox.cmap

## Class CMap

- java.lang.Object
- - org.apache.fontbox.cmap.CMap

-     public class CMap
      extends java.lang.Object

  This class represents a CMap file.

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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

    - #### 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`