cvar
: CVT Variations Table
- class fontTools.ttLib.tables._c_v_a_r.table__c_v_a_r(tag=None)[source]
Bases:
DefaultTable
- dependencies = ['cvt ', 'fvar']
- merge(m, tables)
TupleVariation
- class fontTools.ttLib.tables.TupleVariation.TupleVariation(axes, coordinates)[source]
Bases:
object
- getUsedPoints()[source]
- hasImpact()[source]
Returns True if this TupleVariation has any visible impact.
If the result is False, the TupleVariation can be omitted from the font without making any visible difference.
- toXML(writer, axisTags)[source]
- fromXML(name, attrs, _content)[source]
- compile(axisTags, sharedCoordIndices={}, pointData=None, *, optimizeSize=True)[source]
- compileCoord(axisTags)[source]
- compileIntermediateCoord(axisTags)[source]
- static decompileCoord_(axisTags, data, offset)[source]
- static compilePoints(points)[source]
- static decompilePoints_(numPoints, data, offset, tableTag)[source]
(numPoints, data, offset, tableTag) –> ([point1, point2, …], newOffset)
- compileDeltas(optimizeSize=True)[source]
- static compileDeltaValues_(deltas, bytearr=None, *, optimizeSize=True)[source]
[value1, value2, value3, …] –> bytearray
Emits a sequence of runs. Each run starts with a byte-sized header whose 6 least significant bits (header & 0x3F) indicate how many values are encoded in this run. The stored length is the actual length minus one; run lengths are thus in the range [1..64]. If the header byte has its most significant bit (0x80) set, all values in this run are zero, and no data follows. Otherwise, the header byte is followed by ((header & 0x3F) + 1) signed values. If (header & 0x40) is clear, the delta values are stored as signed bytes; if (header & 0x40) is set, the delta values are signed 16-bit integers.
- static encodeDeltaRunAsZeroes_(deltas, offset, bytearr)[source]
- static encodeDeltaRunAsBytes_(deltas, offset, bytearr, optimizeSize=True)[source]
- static encodeDeltaRunAsWords_(deltas, offset, bytearr, optimizeSize=True)[source]
- static encodeDeltaRunAsLongs_(deltas, offset, bytearr, optimizeSize=True)[source]
- static decompileDeltas_(numDeltas, data, offset=0)[source]
(numDeltas, data, offset) –> ([delta, delta, …], newOffset)
- static getTupleSize_(flags, axisCount)[source]
- getCoordWidth()[source]
Return 2 if coordinates are (x, y) as in gvar, 1 if single values as in cvar, or 0 if empty.
- scaleDeltas(scalar)[source]
- roundDeltas()[source]
- calcInferredDeltas(origCoords, endPts)[source]
- optimize(origCoords, endPts, tolerance=0.5, isComposite=False)[source]
- fontTools.ttLib.tables.TupleVariation.decompileSharedTuples(axisTags, sharedTupleCount, data, offset)[source]
- fontTools.ttLib.tables.TupleVariation.compileSharedTuples(axisTags, variations, MAX_NUM_SHARED_COORDS=4096)[source]
- fontTools.ttLib.tables.TupleVariation.compileTupleVariationStore(variations, pointCount, axisTags, sharedTupleIndices, useSharedPoints=True, *, optimizeSize=True)[source]
- fontTools.ttLib.tables.TupleVariation.decompileTupleVariationStore(tableTag, axisTags, tupleVariationCount, pointCount, sharedTuples, data, pos, dataPos)[source]
- fontTools.ttLib.tables.TupleVariation.decompileTupleVariation_(pointCount, sharedTuples, sharedPoints, tableTag, axisTags, data, tupleData)[source]
- fontTools.ttLib.tables.TupleVariation.inferRegion_(peak)[source]
Infer start and end for a (non-intermediate) region
This helper function computes the applicability region for variation tuples whose INTERMEDIATE_REGION flag is not set in the TupleVariationHeader structure. Variation tuples apply only to certain regions of the variation space; outside that region, the tuple has no effect. To make the binary encoding more compact, TupleVariationHeaders can omit the intermediateStartTuple and intermediateEndTuple fields.