OS2WindowsMetricsTable
Date: 2017-05-25

org.apache.fontbox.ttf

## Class OS2WindowsMetricsTable

- java.lang.Object
- - org.apache.fontbox.ttf.TTFTable
  - - org.apache.fontbox.ttf.OS2WindowsMetricsTable

-     public class OS2WindowsMetricsTable
      extends TTFTable

  A table in a true type font.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `FAMILY_CLASS_CLAREDON_SERIFS` Family class constant.
    `static int` | `FAMILY_CLASS_FREEFORM_SERIFS` Family class constant.
    `static int` | `FAMILY_CLASS_MODERN_SERIFS` Family class constant.
    `static int` | `FAMILY_CLASS_NO_CLASSIFICATION` Family class constant.
    `static int` | `FAMILY_CLASS_OLDSTYLE_SERIFS` Family class constant.
    `static int` | `FAMILY_CLASS_ORNAMENTALS` Family class constant.
    `static int` | `FAMILY_CLASS_SANS_SERIF` Family class constant.
    `static int` | `FAMILY_CLASS_SCRIPTS` Family class constant.
    `static int` | `FAMILY_CLASS_SLAB_SERIFS` Family class constant.
    `static int` | `FAMILY_CLASS_SYMBOLIC` Family class constant.
    `static int` | `FAMILY_CLASS_TRANSITIONAL_SERIFS` Family class constant.
    `static short` | `FSTYPE_BITMAP_ONLY` Bitmap embedding only: only bitmaps contained in the font may be embedded.
    `static short` | `FSTYPE_EDITIBLE` Editable embedding: the font may be embedded but must only be installed temporarily on other systems.
    `static short` | `FSTYPE_NO_SUBSETTING` No subsetting: the font must not be subsetted prior to embedding.
    `static short` | `FSTYPE_PREVIEW_AND_PRINT` Preview and Print embedding: the font may be embedded, and temporarily loaded on the remote system.
    `static short` | `FSTYPE_RESTRICTED` Restricted License embedding: must not be modified, embedded or exchanged in any manner.
    `static java.lang.String` | `TAG` A tag that identifies this table type.
    `static int` | `WEIGHT_CLASS_BLACK` Weight class constant.
    `static int` | `WEIGHT_CLASS_BOLD` Weight class constant.
    `static int` | `WEIGHT_CLASS_EXTRA_BOLD` Weight class constant.
    `static int` | `WEIGHT_CLASS_LIGHT` Weight class constant.
    `static int` | `WEIGHT_CLASS_MEDIUM` Weight class constant.
    `static int` | `WEIGHT_CLASS_NORMAL` Weight class constant.
    `static int` | `WEIGHT_CLASS_SEMI_BOLD` Weight class constant.
    `static int` | `WEIGHT_CLASS_THIN` Weight class constant.
    `static int` | `WEIGHT_CLASS_ULTRA_LIGHT` Weight class constant.
    `static int` | `WIDTH_CLASS_CONDENSED` Width class constant.
    `static int` | `WIDTH_CLASS_EXPANDED` Width class constant.
    `static int` | `WIDTH_CLASS_EXTRA_CONDENSED` Width class constant.
    `static int` | `WIDTH_CLASS_EXTRA_EXPANDED` Width class constant.
    `static int` | `WIDTH_CLASS_MEDIUM` Width class constant.
    `static int` | `WIDTH_CLASS_SEMI_CONDENSED` Width class constant.
    `static int` | `WIDTH_CLASS_SEMI_EXPANDED` Width class constant.
    `static int` | `WIDTH_CLASS_ULTRA_CONDENSED` Width class constant.
    `static int` | `WIDTH_CLASS_ULTRA_EXPANDED` Width class constant.

    - ### Fields inherited from class org.apache.fontbox.ttf.TTFTable

      `font, initialized`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `getAchVendId()`
    `short` | `getAverageCharWidth()`
    `int` | `getBreakChar()` Returns the usBreakChar.
    `int` | `getCapHeight()` Returns the sCapHeight.
    `long` | `getCodePageRange1()`
    `long` | `getCodePageRange2()`
    `int` | `getDefaultChar()` Returns the usDefaultChar.
    `int` | `getFamilyClass()`
    `int` | `getFirstCharIndex()`
    `int` | `getFsSelection()`
    `short` | `getFsType()`
    `int` | `getHeight()` Returns the sxHeight.
    `int` | `getLastCharIndex()`
    `int` | `getMaxContext()` Returns the usMaxContext.
    `byte[]` | `getPanose()`
    `short` | `getStrikeoutPosition()`
    `short` | `getStrikeoutSize()`
    `short` | `getSubscriptXOffset()`
    `short` | `getSubscriptXSize()`
    `short` | `getSubscriptYOffset()`
    `short` | `getSubscriptYSize()`
    `short` | `getSuperscriptXOffset()`
    `short` | `getSuperscriptXSize()`
    `short` | `getSuperscriptYOffset()`
    `short` | `getSuperscriptYSize()`
    `int` | `getTypoAscender()`
    `int` | `getTypoDescender()`
    `int` | `getTypoLineGap()`
    `long` | `getUnicodeRange1()`
    `long` | `getUnicodeRange2()`
    `long` | `getUnicodeRange3()`
    `long` | `getUnicodeRange4()`
    `int` | `getVersion()`
    `int` | `getWeightClass()`
    `int` | `getWidthClass()`
    `int` | `getWinAscent()`
    `int` | `getWinDescent()`
    `void` | `read(TrueTypeFont ttf, org.apache.fontbox.ttf.TTFDataStream data)` This will read the required data from the stream.
    `void` | `setAchVendId(java.lang.String achVendIdValue)`
    `void` | `setAverageCharWidth(short averageCharWidthValue)`
    `void` | `setCodePageRange1(long codePageRange1Value)`
    `void` | `setCodePageRange2(long codePageRange2Value)`
    `void` | `setFamilyClass(int familyClassValue)`
    `void` | `setFirstCharIndex(int firstCharIndexValue)`
    `void` | `setFsSelection(int fsSelectionValue)`
    `void` | `setFsType(short fsTypeValue)`
    `void` | `setLastCharIndex(int lastCharIndexValue)`
    `void` | `setPanose(byte[] panoseValue)`
    `void` | `setStrikeoutPosition(short strikeoutPositionValue)`
    `void` | `setStrikeoutSize(short strikeoutSizeValue)`
    `void` | `setSubscriptXOffset(short subscriptXOffsetValue)`
    `void` | `setSubscriptXSize(short subscriptXSizeValue)`
    `void` | `setSubscriptYOffset(short subscriptYOffsetValue)`
    `void` | `setSubscriptYSize(short subscriptYSizeValue)`
    `void` | `setSuperscriptXOffset(short superscriptXOffsetValue)`
    `void` | `setSuperscriptXSize(short superscriptXSizeValue)`
    `void` | `setSuperscriptYOffset(short superscriptYOffsetValue)`
    `void` | `setSuperscriptYSize(short superscriptYSizeValue)`
    `void` | `setTypoAscender(int typoAscenderValue)`
    `void` | `setTypoDescender(int typoDescenderValue)`
    `void` | `setTypoLineGap(int typeLineGapValue)`
    `void` | `setUnicodeRange1(long unicodeRange1Value)`
    `void` | `setUnicodeRange2(long unicodeRange2Value)`
    `void` | `setUnicodeRange3(long unicodeRange3Value)`
    `void` | `setUnicodeRange4(long unicodeRange4Value)`
    `void` | `setVersion(int versionValue)`
    `void` | `setWeightClass(int weightClassValue)`
    `void` | `setWidthClass(int widthClassValue)`
    `void` | `setWinAscent(int winAscentValue)`
    `void` | `setWinDescent(int winDescentValue)`

    - ### Methods inherited from class org.apache.fontbox.ttf.TTFTable

      `getCheckSum, getInitialized, getLength, getOffset, getTag`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### WEIGHT_CLASS_THIN

          public static final int WEIGHT_CLASS_THIN

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_ULTRA_LIGHT

          public static final int WEIGHT_CLASS_ULTRA_LIGHT

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_LIGHT

          public static final int WEIGHT_CLASS_LIGHT

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_NORMAL

          public static final int WEIGHT_CLASS_NORMAL

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_MEDIUM

          public static final int WEIGHT_CLASS_MEDIUM

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_SEMI_BOLD

          public static final int WEIGHT_CLASS_SEMI_BOLD

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_BOLD

          public static final int WEIGHT_CLASS_BOLD

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_EXTRA_BOLD

          public static final int WEIGHT_CLASS_EXTRA_BOLD

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WEIGHT_CLASS_BLACK

          public static final int WEIGHT_CLASS_BLACK

      Weight class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_ULTRA_CONDENSED

          public static final int WIDTH_CLASS_ULTRA_CONDENSED

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_EXTRA_CONDENSED

          public static final int WIDTH_CLASS_EXTRA_CONDENSED

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_CONDENSED

          public static final int WIDTH_CLASS_CONDENSED

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_SEMI_CONDENSED

          public static final int WIDTH_CLASS_SEMI_CONDENSED

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_MEDIUM

          public static final int WIDTH_CLASS_MEDIUM

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_SEMI_EXPANDED

          public static final int WIDTH_CLASS_SEMI_EXPANDED

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_EXPANDED

          public static final int WIDTH_CLASS_EXPANDED

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_EXTRA_EXPANDED

          public static final int WIDTH_CLASS_EXTRA_EXPANDED

      Width class constant.
      See Also:
        Constant Field Values

    - #### WIDTH_CLASS_ULTRA_EXPANDED

          public static final int WIDTH_CLASS_ULTRA_EXPANDED

      Width class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_NO_CLASSIFICATION

          public static final int FAMILY_CLASS_NO_CLASSIFICATION

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_OLDSTYLE_SERIFS

          public static final int FAMILY_CLASS_OLDSTYLE_SERIFS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_TRANSITIONAL_SERIFS

          public static final int FAMILY_CLASS_TRANSITIONAL_SERIFS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_MODERN_SERIFS

          public static final int FAMILY_CLASS_MODERN_SERIFS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_CLAREDON_SERIFS

          public static final int FAMILY_CLASS_CLAREDON_SERIFS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_SLAB_SERIFS

          public static final int FAMILY_CLASS_SLAB_SERIFS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_FREEFORM_SERIFS

          public static final int FAMILY_CLASS_FREEFORM_SERIFS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_SANS_SERIF

          public static final int FAMILY_CLASS_SANS_SERIF

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_ORNAMENTALS

          public static final int FAMILY_CLASS_ORNAMENTALS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_SCRIPTS

          public static final int FAMILY_CLASS_SCRIPTS

      Family class constant.
      See Also:
        Constant Field Values

    - #### FAMILY_CLASS_SYMBOLIC

          public static final int FAMILY_CLASS_SYMBOLIC

      Family class constant.
      See Also:
        Constant Field Values

    - #### FSTYPE_RESTRICTED

          public static final short FSTYPE_RESTRICTED

      Restricted License embedding: must not be modified, embedded or exchanged in any manner.

      For Restricted License embedding to take effect, it must be the only level of embedding selected.

      See Also:
        Constant Field Values

    - #### FSTYPE_PREVIEW_AND_PRINT

          public static final short FSTYPE_PREVIEW_AND_PRINT

      Preview and Print embedding: the font may be embedded, and temporarily loaded on the remote system. No edits can be applied to the document.
      See Also:
        Constant Field Values

    - #### FSTYPE_EDITIBLE

          public static final short FSTYPE_EDITIBLE

      Editable embedding: the font may be embedded but must only be installed temporarily on other systems. Documents may be editied and changes saved.
      See Also:
        Constant Field Values

    - #### FSTYPE_NO_SUBSETTING

          public static final short FSTYPE_NO_SUBSETTING

      No subsetting: the font must not be subsetted prior to embedding.
      See Also:
        Constant Field Values

    - #### FSTYPE_BITMAP_ONLY

          public static final short FSTYPE_BITMAP_ONLY

      Bitmap embedding only: only bitmaps contained in the font may be embedded. No outline data may be embedded. Other embedding restrictions specified in bits 0-3 and 8 also apply.
      See Also:
        Constant Field Values

    - #### TAG

          public static final java.lang.String TAG

      A tag that identifies this table type.
      See Also:
        Constant Field Values

  - ### Method Detail

    - #### getAchVendId

          public java.lang.String getAchVendId()

      Returns:
        Returns the achVendId.

    - #### setAchVendId

          public void setAchVendId(java.lang.String achVendIdValue)

      Parameters:
        `achVendIdValue` - The achVendId to set.

    - #### getAverageCharWidth

          public short getAverageCharWidth()

      Returns:
        Returns the averageCharWidth.

    - #### setAverageCharWidth

          public void setAverageCharWidth(short averageCharWidthValue)

      Parameters:
        `averageCharWidthValue` - The averageCharWidth to set.

    - #### getCodePageRange1

          public long getCodePageRange1()

      Returns:
        Returns the codePageRange1.

    - #### setCodePageRange1

          public void setCodePageRange1(long codePageRange1Value)

      Parameters:
        `codePageRange1Value` - The codePageRange1 to set.

    - #### getCodePageRange2

          public long getCodePageRange2()

      Returns:
        Returns the codePageRange2.

    - #### setCodePageRange2

          public void setCodePageRange2(long codePageRange2Value)

      Parameters:
        `codePageRange2Value` - The codePageRange2 to set.

    - #### getFamilyClass

          public int getFamilyClass()

      Returns:
        Returns the familyClass.

    - #### setFamilyClass

          public void setFamilyClass(int familyClassValue)

      Parameters:
        `familyClassValue` - The familyClass to set.

    - #### getFirstCharIndex

          public int getFirstCharIndex()

      Returns:
        Returns the firstCharIndex.

    - #### setFirstCharIndex

          public void setFirstCharIndex(int firstCharIndexValue)

      Parameters:
        `firstCharIndexValue` - The firstCharIndex to set.

    - #### getFsSelection

          public int getFsSelection()

      Returns:
        Returns the fsSelection.

    - #### setFsSelection

          public void setFsSelection(int fsSelectionValue)

      Parameters:
        `fsSelectionValue` - The fsSelection to set.

    - #### getFsType

          public short getFsType()

      Returns:
        Returns the fsType.

    - #### setFsType

          public void setFsType(short fsTypeValue)

      Parameters:
        `fsTypeValue` - The fsType to set.

    - #### getLastCharIndex

          public int getLastCharIndex()

      Returns:
        Returns the lastCharIndex.

    - #### setLastCharIndex

          public void setLastCharIndex(int lastCharIndexValue)

      Parameters:
        `lastCharIndexValue` - The lastCharIndex to set.

    - #### getPanose

          public byte[] getPanose()

      Returns:
        Returns the panose.

    - #### setPanose

          public void setPanose(byte[] panoseValue)

      Parameters:
        `panoseValue` - The panose to set.

    - #### getStrikeoutPosition

          public short getStrikeoutPosition()

      Returns:
        Returns the strikeoutPosition.

    - #### setStrikeoutPosition

          public void setStrikeoutPosition(short strikeoutPositionValue)

      Parameters:
        `strikeoutPositionValue` - The strikeoutPosition to set.

    - #### getStrikeoutSize

          public short getStrikeoutSize()

      Returns:
        Returns the strikeoutSize.

    - #### setStrikeoutSize

          public void setStrikeoutSize(short strikeoutSizeValue)

      Parameters:
        `strikeoutSizeValue` - The strikeoutSize to set.

    - #### getSubscriptXOffset

          public short getSubscriptXOffset()

      Returns:
        Returns the subscriptXOffset.

    - #### setSubscriptXOffset

          public void setSubscriptXOffset(short subscriptXOffsetValue)

      Parameters:
        `subscriptXOffsetValue` - The subscriptXOffset to set.

    - #### getSubscriptXSize

          public short getSubscriptXSize()

      Returns:
        Returns the subscriptXSize.

    - #### setSubscriptXSize

          public void setSubscriptXSize(short subscriptXSizeValue)

      Parameters:
        `subscriptXSizeValue` - The subscriptXSize to set.

    - #### getSubscriptYOffset

          public short getSubscriptYOffset()

      Returns:
        Returns the subscriptYOffset.

    - #### setSubscriptYOffset

          public void setSubscriptYOffset(short subscriptYOffsetValue)

      Parameters:
        `subscriptYOffsetValue` - The subscriptYOffset to set.

    - #### getSubscriptYSize

          public short getSubscriptYSize()

      Returns:
        Returns the subscriptYSize.

    - #### setSubscriptYSize

          public void setSubscriptYSize(short subscriptYSizeValue)

      Parameters:
        `subscriptYSizeValue` - The subscriptYSize to set.

    - #### getSuperscriptXOffset

          public short getSuperscriptXOffset()

      Returns:
        Returns the superscriptXOffset.

    - #### setSuperscriptXOffset

          public void setSuperscriptXOffset(short superscriptXOffsetValue)

      Parameters:
        `superscriptXOffsetValue` - The superscriptXOffset to set.

    - #### getSuperscriptXSize

          public short getSuperscriptXSize()

      Returns:
        Returns the superscriptXSize.

    - #### setSuperscriptXSize

          public void setSuperscriptXSize(short superscriptXSizeValue)

      Parameters:
        `superscriptXSizeValue` - The superscriptXSize to set.

    - #### getSuperscriptYOffset

          public short getSuperscriptYOffset()

      Returns:
        Returns the superscriptYOffset.

    - #### setSuperscriptYOffset

          public void setSuperscriptYOffset(short superscriptYOffsetValue)

      Parameters:
        `superscriptYOffsetValue` - The superscriptYOffset to set.

    - #### getSuperscriptYSize

          public short getSuperscriptYSize()

      Returns:
        Returns the superscriptYSize.

    - #### setSuperscriptYSize

          public void setSuperscriptYSize(short superscriptYSizeValue)

      Parameters:
        `superscriptYSizeValue` - The superscriptYSize to set.

    - #### getTypoLineGap

          public int getTypoLineGap()

      Returns:
        Returns the typoLineGap.

    - #### setTypoLineGap

          public void setTypoLineGap(int typeLineGapValue)

      Parameters:
        `typeLineGapValue` - The typoLineGap to set.

    - #### getTypoAscender

          public int getTypoAscender()

      Returns:
        Returns the typoAscender.

    - #### setTypoAscender

          public void setTypoAscender(int typoAscenderValue)

      Parameters:
        `typoAscenderValue` - The typoAscender to set.

    - #### getTypoDescender

          public int getTypoDescender()

      Returns:
        Returns the typoDescender.

    - #### setTypoDescender

          public void setTypoDescender(int typoDescenderValue)

      Parameters:
        `typoDescenderValue` - The typoDescender to set.

    - #### getUnicodeRange1

          public long getUnicodeRange1()

      Returns:
        Returns the unicodeRange1.

    - #### setUnicodeRange1

          public void setUnicodeRange1(long unicodeRange1Value)

      Parameters:
        `unicodeRange1Value` - The unicodeRange1 to set.

    - #### getUnicodeRange2

          public long getUnicodeRange2()

      Returns:
        Returns the unicodeRange2.

    - #### setUnicodeRange2

          public void setUnicodeRange2(long unicodeRange2Value)

      Parameters:
        `unicodeRange2Value` - The unicodeRange2 to set.

    - #### getUnicodeRange3

          public long getUnicodeRange3()

      Returns:
        Returns the unicodeRange3.

    - #### setUnicodeRange3

          public void setUnicodeRange3(long unicodeRange3Value)

      Parameters:
        `unicodeRange3Value` - The unicodeRange3 to set.

    - #### getUnicodeRange4

          public long getUnicodeRange4()

      Returns:
        Returns the unicodeRange4.

    - #### setUnicodeRange4

          public void setUnicodeRange4(long unicodeRange4Value)

      Parameters:
        `unicodeRange4Value` - The unicodeRange4 to set.

    - #### getVersion

          public int getVersion()

      Returns:
        Returns the version.

    - #### setVersion

          public void setVersion(int versionValue)

      Parameters:
        `versionValue` - The version to set.

    - #### getWeightClass

          public int getWeightClass()

      Returns:
        Returns the weightClass.

    - #### setWeightClass

          public void setWeightClass(int weightClassValue)

      Parameters:
        `weightClassValue` - The weightClass to set.

    - #### getWidthClass

          public int getWidthClass()

      Returns:
        Returns the widthClass.

    - #### setWidthClass

          public void setWidthClass(int widthClassValue)

      Parameters:
        `widthClassValue` - The widthClass to set.

    - #### getWinAscent

          public int getWinAscent()

      Returns:
        Returns the winAscent.

    - #### setWinAscent

          public void setWinAscent(int winAscentValue)

      Parameters:
        `winAscentValue` - The winAscent to set.

    - #### getWinDescent

          public int getWinDescent()

      Returns:
        Returns the winDescent.

    - #### setWinDescent

          public void setWinDescent(int winDescentValue)

      Parameters:
        `winDescentValue` - The winDescent to set.

    - #### getHeight

          public int getHeight()

      Returns the sxHeight.

    - #### getCapHeight

          public int getCapHeight()

      Returns the sCapHeight.

    - #### getDefaultChar

          public int getDefaultChar()

      Returns the usDefaultChar.

    - #### getBreakChar

          public int getBreakChar()

      Returns the usBreakChar.

    - #### getMaxContext

          public int getMaxContext()

      Returns the usMaxContext.

    - #### read

          public void read(TrueTypeFont ttf,
                  org.apache.fontbox.ttf.TTFDataStream data)
                    throws java.io.IOException

      This will read the required data from the stream.
      Parameters:
        `ttf` - The font that is being read.
        `data` - The stream to read the data from.
      Throws:
        `java.io.IOException` - If there is an error reading the data.