Interface OpenType

public interface OpenType

The OpenType interface represents OpenType and TrueType fonts. This interface makes it possible to obtain sfnt tables from the font. A particular Font object can implement this interface.

For more information on TrueType and OpenType fonts, see the OpenType specification. ( http://www.microsoft.com/typography/otspec/ ).

Field Summary

Fields
Modifier and Type Field Description
static int TAG_ACNT

Accent attachment.

static int TAG_AVAR

Axis variation.

static int TAG_BASE

Baseline data.

static int TAG_BDAT

Bitmap data.

static int TAG_BLOC

Bitmap location.

static int TAG_BSLN

Baseline table.

static int TAG_CFF

Compact font format (Type1 font).

static int TAG_CMAP

Character to glyph mapping.

static int TAG_CVAR

CVT variation.

static int TAG_CVT

Control value table.

static int TAG_DSIG

Digital signature.

static int TAG_EBDT

Embedded bitmap data.

static int TAG_EBLC

Embedded bitmap location.

static int TAG_EBSC

Embedded bitmap scaling.

static int TAG_FDSC

Font descriptors.

static int TAG_FEAT

Feature name.

static int TAG_FMTX

Font metrics.

static int TAG_FPGM

Font program.

static int TAG_FVAR

Font variation.

static int TAG_GASP

Grid-fitting and scan conversion procedure.

static int TAG_GDEF

Glyph definition.

static int TAG_GLYF

Glyph data.

static int TAG_GPOS

Glyph positioning.

static int TAG_GSUB

Glyph substitution.

static int TAG_GVAR

Glyph variation.

static int TAG_HDMX

Horizontal device metrics.

static int TAG_HEAD

Font header.

static int TAG_HHEA

Horizontal metrics header.

static int TAG_HMTX

Horizontal metrics.

static int TAG_JSTF

Justification.

static int TAG_JUST

Justification.

static int TAG_KERN

Kerning.

static int TAG_LCAR

Ligature caret.

static int TAG_LOCA

Index to location.

static int TAG_LTSH

Linear threshold.

static int TAG_MAXP

Maximum profile.

static int TAG_MMFX

Multiple master font metrics.

static int TAG_MMSD

Multiple master supplementary data.

static int TAG_MORT

Glyph metamorphosis.

static int TAG_NAME

Naming table.

static int TAG_OPBD

Optical bounds.

static int TAG_OS2

OS/2 and Windows specific metrics.

static int TAG_PCLT

PCL 5 data.

static int TAG_POST

PostScript Information.

static int TAG_PREP

CVT preprogram.

static int TAG_PROP

Glyph properties.

static int TAG_TRAK

Tracking.

static int TAG_TYP1

Adobe Type 1 font data.

static int TAG_VDMX

Vertical device metrics.

static int TAG_VHEA

Vertical metrics header.

static int TAG_VMTX

Vertical metrics.

Method Summary

All Methods Instance Methods Abstract Methods
Modifier and Type Method Description
byte[] getFontTable​(int sfntTag)

Returns the table as an array of bytes for a specified tag.

byte[] getFontTable​(int sfntTag, int offset, int count)

Returns a subset of the table as an array of bytes for a specified tag.

byte[] getFontTable​(String strSfntTag)

Returns the table as an array of bytes for a specified tag.

byte[] getFontTable​(String strSfntTag, int offset, int count)

Returns a subset of the table as an array of bytes for a specified tag.

int getFontTableSize​(int sfntTag)

Returns the size of the table for a specified tag.

int getFontTableSize​(String strSfntTag)

Returns the size of the table for a specified tag.

int getVersion()

Returns the version of the OpenType font. 1.0 is represented as 0x00010000.

Field Detail

TAG_CMAP

static final int TAG_CMAP

Character to glyph mapping. Table tag "cmap" in the Open Type Specification.

See Also:
Constant Field Values

TAG_HEAD

static final int TAG_HEAD

Font header. Table tag "head" in the Open Type Specification.

See Also:
Constant Field Values

TAG_NAME

static final int TAG_NAME

Naming table. Table tag "name" in the Open Type Specification.

See Also:
Constant Field Values

TAG_GLYF

static final int TAG_GLYF

Glyph data. Table tag "glyf" in the Open Type Specification.

See Also:
Constant Field Values

TAG_MAXP

static final int TAG_MAXP

Maximum profile. Table tag "maxp" in the Open Type Specification.

See Also:
Constant Field Values

TAG_PREP

static final int TAG_PREP

CVT preprogram. Table tag "prep" in the Open Type Specification.

See Also:
Constant Field Values

TAG_HMTX

static final int TAG_HMTX

Horizontal metrics. Table tag "hmtx" in the Open Type Specification.

See Also:
Constant Field Values

TAG_KERN

static final int TAG_KERN

Kerning. Table tag "kern" in the Open Type Specification.

See Also:
Constant Field Values

TAG_HDMX

static final int TAG_HDMX

Horizontal device metrics. Table tag "hdmx" in the Open Type Specification.

See Also:
Constant Field Values

TAG_LOCA

static final int TAG_LOCA

Index to location. Table tag "loca" in the Open Type Specification.

See Also:
Constant Field Values

TAG_POST

static final int TAG_POST

PostScript Information. Table tag "post" in the Open Type Specification.

See Also:
Constant Field Values

TAG_OS2

static final int TAG_OS2

OS/2 and Windows specific metrics. Table tag "OS/2" in the Open Type Specification.

See Also:
Constant Field Values

TAG_CVT

static final int TAG_CVT

Control value table. Table tag "cvt " in the Open Type Specification.

See Also:
Constant Field Values

TAG_GASP

static final int TAG_GASP

Grid-fitting and scan conversion procedure. Table tag "gasp" in the Open Type Specification.

See Also:
Constant Field Values

TAG_VDMX

static final int TAG_VDMX

Vertical device metrics. Table tag "VDMX" in the Open Type Specification.

See Also:
Constant Field Values

TAG_VMTX

static final int TAG_VMTX

Vertical metrics. Table tag "vmtx" in the Open Type Specification.

See Also:
Constant Field Values

TAG_VHEA

static final int TAG_VHEA

Vertical metrics header. Table tag "vhea" in the Open Type Specification.

See Also:
Constant Field Values

TAG_HHEA

static final int TAG_HHEA

Horizontal metrics header. Table tag "hhea" in the Open Type Specification.

See Also:
Constant Field Values

TAG_TYP1

static final int TAG_TYP1

Adobe Type 1 font data. Table tag "typ1" in the Open Type Specification.

See Also:
Constant Field Values

TAG_BSLN

static final int TAG_BSLN

Baseline table. Table tag "bsln" in the Open Type Specification.

See Also:
Constant Field Values

TAG_GSUB

static final int TAG_GSUB

Glyph substitution. Table tag "GSUB" in the Open Type Specification.

See Also:
Constant Field Values

TAG_DSIG

static final int TAG_DSIG

Digital signature. Table tag "DSIG" in the Open Type Specification.

See Also:
Constant Field Values

TAG_FPGM

static final int TAG_FPGM

Font program. Table tag "fpgm" in the Open Type Specification.

See Also:
Constant Field Values

TAG_FVAR

static final int TAG_FVAR

Font variation. Table tag "fvar" in the Open Type Specification.

See Also:
Constant Field Values

TAG_GVAR

static final int TAG_GVAR

Glyph variation. Table tag "gvar" in the Open Type Specification.

See Also:
Constant Field Values

TAG_CFF

static final int TAG_CFF

Compact font format (Type1 font). Table tag "CFF " in the Open Type Specification.

See Also:
Constant Field Values

TAG_MMSD

static final int TAG_MMSD

Multiple master supplementary data. Table tag "MMSD" in the Open Type Specification.

See Also:
Constant Field Values

TAG_MMFX

static final int TAG_MMFX

Multiple master font metrics. Table tag "MMFX" in the Open Type Specification.

See Also:
Constant Field Values

TAG_BASE

static final int TAG_BASE

Baseline data. Table tag "BASE" in the Open Type Specification.

See Also:
Constant Field Values

TAG_GDEF

static final int TAG_GDEF

Glyph definition. Table tag "GDEF" in the Open Type Specification.

See Also:
Constant Field Values

TAG_GPOS

static final int TAG_GPOS

Glyph positioning. Table tag "GPOS" in the Open Type Specification.

See Also:
Constant Field Values

TAG_JSTF

static final int TAG_JSTF

Justification. Table tag "JSTF" in the Open Type Specification.

See Also:
Constant Field Values

TAG_EBDT

static final int TAG_EBDT

Embedded bitmap data. Table tag "EBDT" in the Open Type Specification.

See Also:
Constant Field Values

TAG_EBLC

static final int TAG_EBLC

Embedded bitmap location. Table tag "EBLC" in the Open Type Specification.

See Also:
Constant Field Values

TAG_EBSC

static final int TAG_EBSC

Embedded bitmap scaling. Table tag "EBSC" in the Open Type Specification.

See Also:
Constant Field Values

TAG_LTSH

static final int TAG_LTSH

Linear threshold. Table tag "LTSH" in the Open Type Specification.

See Also:
Constant Field Values

TAG_PCLT

static final int TAG_PCLT

PCL 5 data. Table tag "PCLT" in the Open Type Specification.

See Also:
Constant Field Values

TAG_ACNT

static final int TAG_ACNT

Accent attachment. Table tag "acnt" in the Open Type Specification.

See Also:
Constant Field Values

TAG_AVAR

static final int TAG_AVAR

Axis variation. Table tag "avar" in the Open Type Specification.

See Also:
Constant Field Values

TAG_BDAT

static final int TAG_BDAT

Bitmap data. Table tag "bdat" in the Open Type Specification.

See Also:
Constant Field Values

TAG_BLOC

static final int TAG_BLOC

Bitmap location. Table tag "bloc" in the Open Type Specification.

See Also:
Constant Field Values

TAG_CVAR

static final int TAG_CVAR

CVT variation. Table tag "cvar" in the Open Type Specification.

See Also:
Constant Field Values

TAG_FEAT

static final int TAG_FEAT

Feature name. Table tag "feat" in the Open Type Specification.

See Also:
Constant Field Values

TAG_FDSC

static final int TAG_FDSC

Font descriptors. Table tag "fdsc" in the Open Type Specification.

See Also:
Constant Field Values

TAG_FMTX

static final int TAG_FMTX

Font metrics. Table tag "fmtx" in the Open Type Specification.

See Also:
Constant Field Values

TAG_JUST

static final int TAG_JUST

Justification. Table tag "just" in the Open Type Specification.

See Also:
Constant Field Values

TAG_LCAR

static final int TAG_LCAR

Ligature caret. Table tag "lcar" in the Open Type Specification.

See Also:
Constant Field Values

TAG_MORT

static final int TAG_MORT

Glyph metamorphosis. Table tag "mort" in the Open Type Specification.

See Also:
Constant Field Values

TAG_OPBD

static final int TAG_OPBD

Optical bounds. Table tag "opbd" in the Open Type Specification.

See Also:
Constant Field Values

TAG_PROP

static final int TAG_PROP

Glyph properties. Table tag "prop" in the Open Type Specification.

See Also:
Constant Field Values

TAG_TRAK

static final int TAG_TRAK

Tracking. Table tag "trak" in the Open Type Specification.

See Also:
Constant Field Values

Method Detail

getVersion

int getVersion()

Returns the version of the OpenType font. 1.0 is represented as 0x00010000.

Returns:
the version of the OpenType font.

getFontTable

byte[] getFontTable​(int sfntTag)

Returns the table as an array of bytes for a specified tag. Tags for sfnt tables include items like cmap, name and head. The byte array returned is a copy of the font data in memory.

Parameters:
sfntTag - a four-character code as a 32-bit integer
Returns:
a byte array that is the table that contains the font data corresponding to the specified tag.

getFontTable

byte[] getFontTable​(String strSfntTag)

Returns the table as an array of bytes for a specified tag. Tags for sfnt tables include items like cmap, name and head. The byte array returned is a copy of the font data in memory.

Parameters:
strSfntTag - a four-character code as a String
Returns:
a byte array that is the table that contains the font data corresponding to the specified tag.

getFontTable

byte[] getFontTable​(int sfntTag,
                    int offset,
                    int count)

Returns a subset of the table as an array of bytes for a specified tag. Tags for sfnt tables include items like cmap, name and head. The byte array returned is a copy of the font data in memory.

Parameters:
sfntTag - a four-character code as a 32-bit integer
offset - index of first byte to return from table
count - number of bytes to return from table
Returns:
a subset of the table corresponding to sfntTag and containing the bytes starting at offset byte and including count bytes.

getFontTable

byte[] getFontTable​(String strSfntTag,
                    int offset,
                    int count)

Returns a subset of the table as an array of bytes for a specified tag. Tags for sfnt tables include items like cmap, name and head. The byte array returned is a copy of the font data in memory.

Parameters:
strSfntTag - a four-character code as a String
offset - index of first byte to return from table
count - number of bytes to return from table
Returns:
a subset of the table corresponding to strSfntTag and containing the bytes starting at offset byte and including count bytes.

getFontTableSize

int getFontTableSize​(int sfntTag)

Returns the size of the table for a specified tag. Tags for sfnt tables include items like cmap, name and head.

Parameters:
sfntTag - a four-character code as a 32-bit integer
Returns:
the size of the table corresponding to the specified tag.

getFontTableSize

int getFontTableSize​(String strSfntTag)

Returns the size of the table for a specified tag. Tags for sfnt tables include items like cmap, name and head.

Parameters:
strSfntTag - a four-character code as a String
Returns:
the size of the table corresponding to the specified tag.