Class CMap

java.lang.Object
com.sun.pdfview.font.ttf.CMap
Direct Known Subclasses:
CMapFormat0, CMapFormat4, CMapFormat6

public abstract class CMap extends Object
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private short
    The format of this map
    private short
    The language of this map, or 0 for language-independent
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    CMap(short format, short language)
    Creates a new instance of CMap Don't use this directly, use CMap.createMap()
  • Method Summary

    Modifier and Type
    Method
    Description
    static CMap
    createMap(short format, short language)
    Create a map for the given format and language
    abstract ByteBuffer
    Get the data in this map as a byte buffer
    short
    Get the format of this map
    short
    Get the language of this map
    abstract short
    Get the length of this map
    static CMap
    Get a map from the given data This method reads the format, data and length variables of the map.
    abstract byte
    map(byte src)
    Map an 8 bit value to another 8 bit value
    abstract char
    map(char src)
    Map a 16 bit value to another 16 but value
    abstract char
    reverseMap(short glyphID)
    Get the src code which maps to the given glyphID
    abstract void
    setData(int length, ByteBuffer data)
    Set the data for this map
    Print a pretty string

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • format

      private short format
      The format of this map
    • language

      private short language
      The language of this map, or 0 for language-independent
  • Constructor Details

    • CMap

      protected CMap(short format, short language)
      Creates a new instance of CMap Don't use this directly, use CMap.createMap()
  • Method Details

    • createMap

      public static CMap createMap(short format, short language)
      Create a map for the given format and language

      The Macintosh standard character to glyph mapping is supported by format 0.

      Format 2 supports a mixed 8/16 bit mapping useful for Japanese, Chinese and Korean.

      Format 4 is used for 16 bit mappings.

      Format 6 is used for dense 16 bit mappings.

      Formats 8, 10, and 12 (properly 8.0, 10.0, and 12.0) are used for mixed 16/32-bit and pure 32-bit mappings.
      This supports text encoded with surrogates in Unicode 2.0 and later.

      Reference:
      http://developer.apple.com/textfonts/TTRefMan/RM06/Chap6cmap.html

    • getMap

      public static CMap getMap(ByteBuffer data)
      Get a map from the given data This method reads the format, data and length variables of the map.
    • getFormat

      public short getFormat()
      Get the format of this map
    • getLanguage

      public short getLanguage()
      Get the language of this map
    • setData

      public abstract void setData(int length, ByteBuffer data)
      Set the data for this map
    • getData

      public abstract ByteBuffer getData()
      Get the data in this map as a byte buffer
    • getLength

      public abstract short getLength()
      Get the length of this map
    • map

      public abstract byte map(byte src)
      Map an 8 bit value to another 8 bit value
    • map

      public abstract char map(char src)
      Map a 16 bit value to another 16 but value
    • reverseMap

      public abstract char reverseMap(short glyphID)
      Get the src code which maps to the given glyphID
    • toString

      public String toString()
      Print a pretty string
      Overrides:
      toString in class Object