Schemas / Font (UFO / variable)

rig.font.face

v0.31.0 · draft 9 fields 0 required

Fields

FieldTypeMeaning
family string optional Optional. Family name (UFO familyName)
style string optional Optional. Style name (UFO styleName); absent = Regular
unitsPerEm float optional Optional. Font units per em; absent = 1000
ascender float optional Optional. Ascender in font units
descender float optional Optional. Descender in font units (typically negative)
capHeight float optional Optional. Cap height in font units
xHeight float optional Optional. x-height in font units
version string optional Optional. Face version string (1.000)
features entity optional Optional. rig.media.code buffer; language fea (AFDKO)

Editable typeface metrics. Format when present.

This is the source face - UFO / GLIF meaning. A compiled file on disk is rig.media.asset_ref kind font. A positioned canvas run is rig.media.text. Do not grow text or asset_ref with outline fields.

Compose rig.meta.named for the face label. .ufo / .ufoz stay host encodings - ufo.md.

Layers, glyphs, kern pairs, groups, and design axes are other entities. Containment is rig.spatial.relationship parent under this face (layers, axes) or under a layer (glyphs).

Variable design space: child entities with rig.font.axis (+ optional rig.font.avar). Live lattice deltas on a glyph: rig.font.cell. Hinting and colour-font tables are fulfillment / later schemas.

JSON Schema

Resolves at https://rig.works/schemas/rig.font.face.schema.jsonraw file.

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rig.works/schemas/rig.font.face.schema.json",
  "title": "rig.font.face",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "family": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "style": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "unitsPerEm": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "ascender": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "descender": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "capHeight": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "xHeight": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "version": {
      "$ref": "./_defs.schema.json#/$defs/string"
    },
    "features": {
      "$ref": "./_defs.schema.json#/$defs/entity"
    }
  }
}

Seen in

font-ufo.json · font-var.json