TTFFile (Apache FOP Core 2.11 API)
Date: 2025-04-24

org.apache.fop.fonts.truetype

## Class TTFFile

- java.lang.Object
- - org.apache.fop.fonts.truetype.OpenFont
  - - org.apache.fop.fonts.truetype.TTFFile

- Direct Known Subclasses:
    TTFSubSetFile

      public class TTFFile
      extends OpenFont

  Reads a TrueType file or a TrueType Collection. The TrueType spec can be found at the Microsoft. Typography site: http://www.microsoft.com/truetype/

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.fop.fonts.truetype.OpenFont

      `OpenFont.PostScriptVersion`

  - ### Field Summary

    - ### Fields inherited from class org.apache.fop.fonts.truetype.OpenFont

      `advancedTableReader, cid, dirTabs, embedFontName, familyNames, fontFile, fullName, lastLoca, locaFormat, log, mtxTab, nhmtx, notice, numberOfGlyphs, postScriptName, subFamilyName, svgs, TRACE_ENABLED, unicodeMappings, useAdvanced, useKerning`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `TTFFile()`
    `TTFFile(boolean useKerning, boolean useAdvanced)` Constructor

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `getLastGlyfLocation()` Gets the last location of the glyf table
    `protected void` | `initializeFont(FontFileReader in)`
    `protected void` | `readIndexToLocation()` Read the "loca" table.
    `protected void` | `readName()` Read the "name" table.
    `protected void` | `updateBBoxAndOffset()`

    - ### Methods inherited from class org.apache.fop.fonts.truetype.OpenFont

      `checkTTC, convertTTFUnit2PDFUnit, createCMaps, determineAscDesc, getAnsiKerning, getBBox, getBBoxRaw, getBoundingBoxes, getCapHeight, getCharSetName, getCharWidth, getCharWidthRaw, getCMaps, getCopyrightNotice, getDirectoryEntry, getEmbedFontName, getFamilyNames, getFirstChar, getFlags, getFontBBox, getFullName, getGDEF, getGPOS, getGSUB, getItalicAngle, getKerning, getLastChar, getLowerCaseAscent, getLowerCaseDescent, getMtx, getNumGlyphs, getPadSize, getPostScriptName, getStemV, getStrikeoutPosition, getStrikeoutThickness, getSubFamilyName, getTTCnames, getUnderlinePosition, getUnderlineThickness, getWeightClass, getWidths, getXHeight, guessVerticalMetricsFromGlyphBBox, handleCharacterSpacing, hasAdvancedTable, initAnsiWidths, isCFF, isEmbeddable, main, printStuff, readCMAP, readDirTabs, readFont, readFont, readFont, readFontHeader, readHorizontalHeader, readHorizontalMetrics, readKerning, readOS2, readPCLT, readPostScript, seekTab, stream`

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

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

- - ### Constructor Detail

    - #### TTFFile

          public TTFFile()

    - #### TTFFile

          public TTFFile(boolean useKerning,
                         boolean useAdvanced)

      Constructor
      Parameters:
        `useKerning` - true if kerning data should be loaded
        `useAdvanced` - true if advanced typographic tables should be loaded

  - ### Method Detail

    - #### readName

          protected void readName()
                           throws IOException

      Read the "name" table.
      Specified by:
        `readName` in class `OpenFont`
      Throws:
        `IOException` - In case of a I/O problem

    - #### updateBBoxAndOffset

          protected void updateBBoxAndOffset()
                                      throws IOException

      Specified by:
        `updateBBoxAndOffset` in class `OpenFont`
      Throws:
        `IOException`

    - #### readIndexToLocation

          protected final void readIndexToLocation()
                                            throws IOException

      Read the "loca" table.
      Throws:
        `IOException` - In case of a I/O problem

    - #### getLastGlyfLocation

          public long getLastGlyfLocation()

      Gets the last location of the glyf table
      Returns:
        The last location as a long

    - #### initializeFont

          protected void initializeFont(FontFileReader in)
                                 throws IOException

      Specified by:
        `initializeFont` in class `OpenFont`
      Throws:
        `IOException`

Copyright © 2025 Apache Software Foundation. All rights reserved.