Class Cmap

  • public final class Cmap
    extends Table
    Gives access to a 'cmap' table.

    Encoding forms support

    A number of subtable formats are designed to combine the decoding of a character stream and the computation of the glyph ID. For example, format 8 is geared to support encoding forms with one or two 16 bits code units (such as UTF-16) and has a 64K bit array to indicate those code units which represent a code point on their own and those code units which are the first of a pair. The idea is that the details of the encoding form can be captured in the font.

    Our point of view is that encoding forms are not the business of fonts, so we ignore those parts of those formats.

    Version handling

    'cmap' tables have only a minor version number. This implementation:

    • fully supports version 0 tables
    • interprets version x > 0 tables as version 0 tables