enum
{
OLDER_SIBLING_FONT_ATTRIBUTE = 0x0001, /* If set, this axis value table *providesaxisvalueinformation *thatisapplicabletootherfonts *withinthesamefontfamily.This *isusediftheotherfontswere *releasedearlieranddidnotinclude *informationaboutvaluesforsomeaxis. *Ifnewerversionsoftheother *fontsincludetheinformation *themselvesandarepresent,
* then this record is ignored. */
ELIDABLE_AXIS_VALUE_NAME = 0x0002 /* If set, it indicates that the axis *valuerepresentsthe“normal”value *fortheaxisandmaybeomittedwhen
* composing name strings. */ // Reserved = 0xFFFC /* Reserved for future use — set to zero. */
};
protected:
Tag tag; /* A tag identifying the axis of design variation. */
NameID nameID; /* The name ID for entries in the 'name' table that
* provide a display string for this axis. */
HBUINT16 ordering; /* A value that applications can use to determine *primarysortingoffacenames,orforordering
* of descriptors when composing family or face names. */ public:
DEFINE_SIZE_STATIC (8);
};
protected:
HBUINT16 format; /* Format identifier — set to 1. */
HBUINT16 axisIndex; /* Zero-base index into the axis record array *identifyingtheaxisofdesignvariation *towhichtheaxisvaluerecordapplies.
* Must be less than designAxisCount. */
HBUINT16 flags; /* Flags — see below for details. */
NameID valueNameID; /* The name ID for entries in the 'name' table *thatprovideadisplaystringforthis
* attribute value. */
F16DOT16 value; /* A numeric value for this attribute value. */ public:
DEFINE_SIZE_STATIC (12);
};
protected:
HBUINT16 format; /* Format identifier — set to 2. */
HBUINT16 axisIndex; /* Zero-base index into the axis record array *identifyingtheaxisofdesignvariation *towhichtheaxisvaluerecordapplies.
* Must be less than designAxisCount. */
HBUINT16 flags; /* Flags — see below for details. */
NameID valueNameID; /* The name ID for entries in the 'name' table *thatprovideadisplaystringforthis
* attribute value. */
F16DOT16 nominalValue; /* A numeric value for this attribute value. */
F16DOT16 rangeMinValue; /* The minimum value for a range associated
* with the specified name ID. */
F16DOT16 rangeMaxValue; /* The maximum value for a range associated
* with the specified name ID. */ public:
DEFINE_SIZE_STATIC (20);
};
protected:
HBUINT16 format; /* Format identifier — set to 3. */
HBUINT16 axisIndex; /* Zero-base index into the axis record array *identifyingtheaxisofdesignvariation *towhichtheaxisvaluerecordapplies.
* Must be less than designAxisCount. */
HBUINT16 flags; /* Flags — see below for details. */
NameID valueNameID; /* The name ID for entries in the 'name' table *thatprovideadisplaystringforthis
* attribute value. */
F16DOT16 value; /* A numeric value for this attribute value. */
F16DOT16 linkedValue; /* The numeric value for a style-linked mapping
* from this value. */ public:
DEFINE_SIZE_STATIC (16);
};
protected:
HBUINT16 axisIndex; /* Zero-base index into the axis record array *identifyingtheaxistowhichthisvalue
* applies. Must be less than designAxisCount. */
F16DOT16 value; /* A numeric value for this attribute value. */ public:
DEFINE_SIZE_STATIC (6);
};
protected:
HBUINT16 format; /* Format identifier — set to 4. */
HBUINT16 axisCount; /* The total number of axes contributing to
* this axis-values combination. */
HBUINT16 flags; /* Flags — see below for details. */
NameID valueNameID; /* The name ID for entries in the 'name' table *thatprovideadisplaystringforthis
* attribute value. */
UnsizedArrayOf<AxisValueRecord>
axisValues; /* Array of AxisValue records that provide the *combinationofaxisvalues,oneforeach
* contributing axis. */ public:
DEFINE_SIZE_ARRAY (8, axisValues);
};
bool subset (hb_subset_context_t *c) const
{
TRACE_SUBSET (this);
STAT *out = c->serializer->embed (this); if (unlikely (!out)) return_trace (false);
auto designAxes = get_design_axes (); for (unsigned i = 0; i < (unsigned)designAxisCount; i++) if (unlikely (!c->serializer->embed (designAxes[i])))
return_trace (false);
if (designAxisCount)
c->serializer->check_assign (out->designAxesOffset, this->get_size (),
HB_SERIALIZE_ERROR_INT_OVERFLOW);
protected:
FixedVersion<>version; /* Version of the stat table
* initially set to 0x00010002u */
HBUINT16 designAxisSize; /* The size in bytes of each axis record. */
HBUINT16 designAxisCount;/* The number of design axis records. In a *fontwithan'fvar'table,thisvaluemustbe *greaterthanorequaltotheaxisCountvalue *inthe'fvar'table.Inallfonts,must *begreaterthanzeroifaxisValueCount
* is greater than zero. */
NNOffset32To<UnsizedArrayOf<StatAxisRecord>>
designAxesOffset; /* Offset in bytes from the beginning of *theSTATtabletothestartofthedesign *axesarray.IfdesignAxisCountiszero, *settozero;ifdesignAxisCountisgreater
* than zero, must be greater than zero. */
HBUINT16 axisValueCount; /* The number of axis value tables. */
NNOffset32To<AxisValueOffsetArray>
offsetToAxisValueOffsets; /* Offset in bytes from the beginning of *theSTATtabletothestartofthedesign *axesvalueoffsetsarray.IfaxisValueCount *iszero,settozero;ifaxisValueCountis
* greater than zero, must be greater than zero. */
NameID elidedFallbackNameID; /* Name ID used as fallback when projection of *namesintoaparticularfontmodelproduces *asubfamilynamecontainingonlyelidable
* elements. */ public:
DEFINE_SIZE_STATIC (20);
};
} /* namespace OT */
#endif/* HB_OT_STAT_TABLE_HH */
Messung V0.5 in Prozent
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet am 2026-06-10)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.