# Crate skrifa

Expand description

A robust, ergonomic, high performance crate for OpenType fonts.

Skrifa is a mid level library that provides access to various types of `metadata` contained in a font as well as support for loading glyph `outlines`.

It is described as “mid level” because the library is designed to sit above low level font parsing (provided by `read-fonts`) and below a higher level text layout engine.

See the readme for additional details.

## Modules§

attribute
  Primary attributes typically used for font classification and selection.
bitmap
  Bitmap strikes and glyphs.
charmap
  Mapping of characters (codepoints, not graphemes) to nominal glyph identifiers.
color
  Drawing color glyphs.
font
  Basic representation of an in-memory font resource.
instance
  Helpers for selecting a font size and location in variation space.
metrics
  Global font and glyph specific metrics.
outline
  Loading, scaling and hinting of glyph outlines.
prelude
  Useful collection of common types suitable for glob importing.
raw
  Reading OpenType tables
setting
  Definitions for specifying variations and typographic features.
string
  Localized strings describing font names and other metadata.

## Structs§

Axis
  Axis of variation in a variable font.
AxisCollection
  Collection of axes in a variable font.
FontRef
  Reference to an in-memory font.
GlyphId
  A 32-bit glyph identifier.
GlyphId16
  A 16-bit glyph identifier.
GlyphName
  The name of a glyph.
GlyphNames
  Mapping from glyph identifiers to names.
NamedInstance
  Named instance of a variation.
NamedInstanceCollection
  Collection of named instances in a variable font.
OutlineGlyph
  A scalable glyph outline.
OutlineGlyphCollection
  Collection of scalable glyph outlines.
Tag
  An OpenType tag.

## Enums§

GlyphNameSource
  Specifies the chosen source for glyph names.

## Traits§

MetadataProvider
  Interface for types that can provide font metadata.