Schemas / Font (UFO / variable)
rig.font.cell
v0.31.0 · draft 2 fields 1 required
Fields
| Field | Type | Meaning | |
|---|---|---|---|
baseAdv |
float | required | Required. Advance width at the default instance (matches glyph.width when both present) |
terms |
array<object> | optional | Optional. Reconstruction terms; absent or empty = static glyph |
Live variable-glyph reconstruction on a glyph entity. Format when present.
Default outline stays on rig.geometry.path (the default master). This component holds deltas that reconstruct other locations: base + Σ weight(term) · Δ. Used by lattice / morph hosts (VarFont, vFont). Static UFO faces omit it.
Term
Delta segment
Weighting is host fulfillment (e.g. |blend| for linear terms, tent for hats, product for crosses). Do not store GPU buffers, dirty flags, or sampled FreeType outlines here.
JSON Schema
Resolves at https://rig.works/schemas/rig.font.cell.schema.json —
raw file.
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://rig.works/schemas/rig.font.cell.schema.json",
"title": "rig.font.cell",
"type": "object",
"additionalProperties": false,
"properties": {
"baseAdv": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"terms": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"axisTag",
"sign",
"adv",
"segs"
],
"properties": {
"axisTag": {
"$ref": "./_defs.schema.json#/$defs/string"
},
"sign": {
"type": "integer",
"enum": [
-1,
1
]
},
"axisTag2": {
"$ref": "./_defs.schema.json#/$defs/string"
},
"sign2": {
"type": "integer",
"enum": [
-1,
1
]
},
"axisTag3": {
"$ref": "./_defs.schema.json#/$defs/string"
},
"sign3": {
"type": "integer",
"enum": [
-1,
1
]
},
"center": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"wl": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"wr": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"adv": {
"$ref": "./_defs.schema.json#/$defs/float"
},
"segs": {
"type": "array",
"items": {
"type": "object",
"additionalProperties": false,
"required": [
"type",
"points"
],
"properties": {
"type": {
"type": "string",
"enum": [
"line",
"quad"
]
},
"points": {
"type": "array",
"items": {
"$ref": "./_defs.schema.json#/$defs/vec2"
}
}
}
}
}
}
}
}
},
"required": [
"baseAdv"
]
}