org.apache.fop.complexscripts.fonts

## Class OTFAdvancedTypographicTableReader

- java.lang.Object
- - org.apache.fop.complexscripts.fonts.OTFAdvancedTypographicTableReader

-     public final class OTFAdvancedTypographicTableReader
      extends Object

  OpenType Font (OTF) advanced typographic table reader. Used by @{Link org.apache.fop.fonts.truetype.TTFFile} to read advanced typographic tables (GDEF, GSUB, GPOS).

  This work was originally authored by Glenn Adams (gadams@apache.org).

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `OTFAdvancedTypographicTableReader(OpenFont otf, FontFileReader in)` Construct an `OTFAdvancedTypographicTableReader` instance.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `GlyphDefinitionTable` | `getGDEF()` Returns the GDEF table or null if none present.
    `GlyphPositioningTable` | `getGPOS()` Returns the GPOS table or null if none present.
    `GlyphSubstitutionTable` | `getGSUB()` Returns the GSUB table or null if none present.
    `boolean` | `hasAdvancedTable()` Determine if advanced (typographic) table is present.
    `void` | `readAll()` Read all advanced typographic tables.

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

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

- - ### Constructor Detail

    - #### OTFAdvancedTypographicTableReader

          public OTFAdvancedTypographicTableReader(OpenFont otf,
                                                   FontFileReader in)

      Construct an `OTFAdvancedTypographicTableReader` instance.
      Parameters:
        `otf` - parent font file reader (must be non-null)
        `in` - font file reader (must be non-null)

  - ### Method Detail

    - #### readAll

          public void readAll()
                       throws AdvancedTypographicTableFormatException

      Read all advanced typographic tables.
      Throws:
        `AdvancedTypographicTableFormatException` - if ATT table has invalid format

    - #### hasAdvancedTable

          public boolean hasAdvancedTable()

      Determine if advanced (typographic) table is present.
      Returns:
        true if advanced (typographic) table is present

    - #### getGDEF

          public GlyphDefinitionTable getGDEF()

      Returns the GDEF table or null if none present.
      Returns:
        the GDEF table

    - #### getGSUB

          public GlyphSubstitutionTable getGSUB()

      Returns the GSUB table or null if none present.
      Returns:
        the GSUB table

    - #### getGPOS

          public GlyphPositioningTable getGPOS()

      Returns the GPOS table or null if none present.
      Returns:
        the GPOS table

Copyright © 2025 Apache Software Foundation. All rights reserved.