Schemas / Font (UFO / variable)

rig.font.component

v0.31.0 · draft 7 fields 1 required

Fields

FieldTypeMeaning
glyph entity required Source rig.font.glyph
scaleX float optional Optional. UFO xScale; absent = 1
xyScale float optional Optional. UFO xyScale; absent = 0
yxScale float optional Optional. UFO yxScale; absent = 0
scaleY float optional Optional. UFO yScale; absent = 1
offsetX float optional Optional. UFO xOffset in font units; absent = 0
offsetY float optional Optional. UFO yOffset in font units; absent = 0

Composite reference - draw another glyph into this one. Format when present.

UFO component in a GLIF. Live on a child of the composite rig.font.glyph (one component type per entity). Do not reuse rig.spatial.transform - that is 3D TRS.

The six numbers are the UFO 2×3 affine. Omit identity terms.

JSON Schema

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

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://rig.works/schemas/rig.font.component.schema.json",
  "title": "rig.font.component",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "glyph": {
      "$ref": "./_defs.schema.json#/$defs/entity"
    },
    "scaleX": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "xyScale": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "yxScale": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "scaleY": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "offsetX": {
      "$ref": "./_defs.schema.json#/$defs/float"
    },
    "offsetY": {
      "$ref": "./_defs.schema.json#/$defs/float"
    }
  },
  "required": [
    "glyph"
  ]
}

Seen in

font-ufo.json