# Package java.awt.font

Provides classes and interface relating to fonts.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  MultipleMaster | The `MultipleMaster` interface represents Type 1 Multiple Master fonts.
  OpenType | The `OpenType` interface represents OpenType and TrueType fonts.

- Class Summary
  Class | Description
  --- | ---
  FontRenderContext | The `FontRenderContext` class is a container for the information needed to correctly measure text.
  GlyphJustificationInfo | The `GlyphJustificationInfo` class represents information about the justification properties of a glyph.
  GlyphMetrics | The `GlyphMetrics` class represents information for a single glyph.
  GlyphVector | A `GlyphVector` object is a collection of glyphs containing geometric information for the placement of each glyph in a transformed coordinate space which corresponds to the device on which the `GlyphVector` is ultimately displayed.
  GraphicAttribute | This class is used with the CHAR_REPLACEMENT attribute.
  ImageGraphicAttribute | The `ImageGraphicAttribute` class is an implementation of `GraphicAttribute` which draws images in a `TextLayout`.
  LayoutPath | LayoutPath provides a mapping between locations relative to the baseline and points in user space.
  LineBreakMeasurer | The `LineBreakMeasurer` class allows styled text to be broken into lines (or segments) that fit within a particular visual advance.
  LineMetrics | The `LineMetrics` class allows access to the metrics needed to layout characters along a line and to layout of a set of lines.
  NumericShaper | The `NumericShaper` class is used to convert Latin-1 (European) digits to other Unicode decimal digits.
  ShapeGraphicAttribute | The `ShapeGraphicAttribute` class is an implementation of `GraphicAttribute` that draws shapes in a `TextLayout`.
  TextAttribute | The `TextAttribute` class defines attribute keys and attribute values used for text rendering.
  TextHitInfo | The `TextHitInfo` class represents a character position in a text model, and a bias, or "side," of the character.
  TextLayout | `TextLayout` is an immutable graphical representation of styled character data.
  TextLayout.CaretPolicy | Defines a policy for determining the strong caret location.
  TextMeasurer | The `TextMeasurer` class provides the primitive operations needed for line break: measuring up to a given advance, determining the advance of a range of characters, and generating a `TextLayout` for a range of characters.
  TransformAttribute | The `TransformAttribute` class provides an immutable wrapper for a transform so that it is safe to use as an attribute.

- Enum Summary
  Enum | Description
  --- | ---
  NumericShaper.Range | A `NumericShaper.Range` represents a Unicode range of a script having its own decimal digits.

## Package java.awt.font Description

Provides classes and interface relating to fonts. It contains support for representing Type 1, Type 1 Multiple Master fonts, OpenType fonts, and TrueType fonts.

Since:
  1.2

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.