java.awt.font

## 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 fonts, see the Apple TrueType Reference Manual ( http://fonts.apple.com/TTRefMan/index.html ).

### Field Summary

Fields
`static int` `TAG_ACNT` Accent attachment.
`static int` `TAG_AVAR` Axis variaiton.
`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

Methods
`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.

### 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 variaiton. 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.

Copyright © 1993, 2017, Oracle and/or its affiliates. All rights reserved.