An index that refers to a byte offset in a text run. This could
the middle of a glyph.
This data structure represents the various optional descriptors that can be
applied to a
@font-face
rule in CSS. These are used to create a
FontTemplate
from the given font data used as the source of the
@font-face
rule. If values
like weight, stretch, and style are not specified they are initialized based
on the contents of the font itself.
The FontContext represents the per-thread/thread state necessary for
working with fonts. It is the public API used by the layout and
paint code. It talks directly to the system font service where
required.
A data structure to store data for fonts. Data is stored internally in an
IpcSharedMemory
handle, so that it can be send without serialization
across IPC channels.
FontDescriptor
describes the parameters of a Font
. It represents rendering a given font
template at a particular size, with a particular font-variant-caps applied, etc. This contrasts
with FontTemplateDescriptor
in that the latter represents only the parameters inherent in the
font data (weight, stretch, etc.).
The font family parameters for font selection.
A FontGroup
is a prioritised list of fonts for a given set of font styles. It is used by
TextRun
to decide which font to render a character with. If none of the fonts listed in the
styles are suitable, a fallback font may be used.
This describes all the information needed to create
font instance handles. It contains a unique
FontTemplateData structure that is platform specific.
Describes how to select a font from a given family. This is very basic at the moment and needs
to be expanded or refactored when we support more of the font styling parameters.
A list of font templates that make up a given font family.
GlyphEntry is a port of Geckoโs CompressedGlyph scheme for storing glyph data compactly.
A single series of glyphs within a text run.
Stores the glyph data belonging to a text run.
Various options that control text shaping.
The system font service. There is one of these for every Servo instance. This is a thread,
responsible for reading the list of system fonts, handling requests to match against
them, and ensuring that only one copy of system font data is loaded at a time.
The public interface to the
SystemFontService
, used by per-Document
FontContext
instances.