tables

_a_v_a_r

class fontTools.ttLib.tables._a_v_a_r.table__a_v_a_r(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['fvar']
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

_c_m_a_p

class fontTools.ttLib.tables._c_m_a_p.CmapSubtable(format)[source]
decompileHeader(data, ttFont)[source]
getEncoding(default=None)[source]

Returns the Python encoding name for this cmap subtable based on its platformID, platEncID, and language. If encoding for these values is not known, by default None is returned. That can be overriden by passing a value to the default argument.

Note that if you want to choose a “preferred” cmap subtable, most of the time self.isUnicode() is what you want as that one only returns true for the modern, commonly used, Unicode-compatible triplets, not the legacy ones.

static getSubtableClass(format)[source]

Return the subtable class for a format.

isSymbol()[source]
isUnicode()[source]
static newSubtable(format)[source]

Return a new instance of a subtable for format.

toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._c_m_a_p.SubHeader[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_0(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_12(format=12)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_12_or_13(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
decompileHeader(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_13(format=13)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_14(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
decompileHeader(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_2(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
setIDDelta(subHeader)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_4(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_6(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
class fontTools.ttLib.tables._c_m_a_p.cmap_format_unknown(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
decompileHeader(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
fontTools.ttLib.tables._c_m_a_p.cvtFromUVS(val)[source]
fontTools.ttLib.tables._c_m_a_p.cvtToUVS(threeByteString)[source]
fontTools.ttLib.tables._c_m_a_p.splitRange(startCode, endCode, cmap)[source]
class fontTools.ttLib.tables._c_m_a_p.table__c_m_a_p(tag=None)[source]
buildReversed()[source]

Returns a reverse cmap such as {‘one’:{0x31}, ‘A’:{0x41,0x391}}.

The values are sets of Unicode codepoints because some fonts map different codepoints to the same glyph. For example, U+0041 LATIN CAPITAL LETTER A and U+0391 GREEK CAPITAL LETTER ALPHA are sometimes the same glyph.

closure_glyphs(s)
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
getBestCmap(cmapPreferences=((3, 10), (0, 6), (0, 4), (3, 1), (0, 3), (0, 2), (0, 1), (0, 0)))[source]

Return the ‘best’ unicode cmap dictionary available in the font, or None, if no unicode cmap subtable is available.

By default it will search for the following (platformID, platEncID) pairs:

(3, 10), (0, 6), (0, 4), (3, 1), (0, 3), (0, 2), (0, 1), (0, 0)

This can be customized via the cmapPreferences argument.

getcmap(platformID, platEncID)[source]
merge(m, tables)
prune_pre_subset(font, options)
subset_glyphs(s)
toXML(writer, ttFont)[source]

_c_v_a_r

class fontTools.ttLib.tables._c_v_a_r.table__c_v_a_r(tag=None)[source]
compile(ttFont, useSharedPoints=False)[source]
decompile(data, ttFont)[source]
dependencies = ['cvt ', 'fvar']
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

_c_v_t

class fontTools.ttLib.tables._c_v_t.table__c_v_t(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
mergeMap(lst)
toXML(writer, ttFont)[source]

_f_e_a_t

class fontTools.ttLib.tables._f_e_a_t.table__f_e_a_t(tag=None)[source]

_f_p_g_m

class fontTools.ttLib.tables._f_p_g_m.table__f_p_g_m(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
mergeMap(lst)
toXML(writer, ttFont)[source]

_f_v_a_r

class fontTools.ttLib.tables._f_v_a_r.Axis[source]
compile()[source]
decompile(data)[source]
fromXML(name, _attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._f_v_a_r.NamedInstance[source]
compile(axisTags, includePostScriptName)[source]
decompile(data, axisTags)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._f_v_a_r.table__f_v_a_r(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['name']
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

_g_a_s_p

class fontTools.ttLib.tables._g_a_s_p.table__g_a_s_p(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
mergeMap(lst)
toXML(writer, ttFont)[source]

_g_l_y_f

_g_l_y_f.py – Converter classes for the ‘glyf’ table.

class fontTools.ttLib.tables._g_l_y_f.CompositeMaxpValues(nPoints, nContours, maxComponentDepth)
maxComponentDepth

Alias for field number 2

nContours

Alias for field number 1

nPoints

Alias for field number 0

class fontTools.ttLib.tables._g_l_y_f.Glyph(data='')[source]
compact(glyfTable, recalcBBoxes=True)[source]
compile(glyfTable, recalcBBoxes=True)[source]
compileComponents(glyfTable)[source]
compileCoordinates()[source]
compileDeltasGreedy(flags, deltas)[source]
compileDeltasOptimal(flags, deltas)[source]
decompileComponents(data, glyfTable)[source]
decompileCoordinates(data)[source]
decompileCoordinatesRaw(nCoordinates, data)[source]
draw(pen, glyfTable, offset=0)[source]
drawPoints(pen, glyfTable, offset=0)[source]

Draw the glyph using the supplied pointPen. Opposed to Glyph.draw(), this will not change the point indices.

expand(glyfTable)[source]
fromXML(name, attrs, content, ttFont)[source]
getComponentNames(glyfTable)[source]
getCompositeMaxpValues(glyfTable, maxComponentDepth=1)[source]
getCoordinates(glyfTable)[source]
getMaxpValues()[source]
isComposite()[source]

Can be called on compact or expanded glyph.

recalcBounds(glyfTable)[source]
remapComponentsFast(glyphidmap)
removeHinting()[source]
toXML(writer, ttFont)[source]
trim(remove_hinting=False)[source]

Remove padding and, if requested, hinting, from a glyph. This works on both expanded and compacted glyphs, without expanding it.

class fontTools.ttLib.tables._g_l_y_f.GlyphComponent[source]
compile(more, haveInstructions, glyfTable)[source]
decompile(data, glyfTable)[source]
fromXML(name, attrs, content, ttFont)[source]
getComponentInfo()[source]

Return the base glyph name and a transform.

toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._g_l_y_f.GlyphCoordinates(iterable=[], typecode='h')[source]
absoluteToRelative()[source]
append(p)[source]
array
copy()[source]
extend(iterable)[source]
isFloat()[source]
relativeToAbsolute()[source]
scale(p)[source]
>>> GlyphCoordinates([(1,2)]).scale((.5,0))
toInt()[source]
transform(t)[source]
>>> GlyphCoordinates([(1,2)]).transform(((.5,0),(.2,.5)))
translate(p)[source]
>>> GlyphCoordinates([(1,2)]).translate((.5,0))
static zeros(count)[source]
fontTools.ttLib.tables._g_l_y_f.flagBest(x, y, onCurve)[source]

For a given x,y delta pair, returns the flag that packs this pair most efficiently, as well as the number of byte cost of such flag.

fontTools.ttLib.tables._g_l_y_f.flagEncodeCoord(flag, mask, coord, coordBytes)[source]
fontTools.ttLib.tables._g_l_y_f.flagEncodeCoords(flag, x, y, xBytes, yBytes)[source]
fontTools.ttLib.tables._g_l_y_f.flagFits(newFlag, oldFlag, mask)[source]
fontTools.ttLib.tables._g_l_y_f.flagSupports(newFlag, oldFlag)[source]
fontTools.ttLib.tables._g_l_y_f.reprflag(flag)[source]
class fontTools.ttLib.tables._g_l_y_f.table__g_l_y_f(tag=None)[source]
closure_glyphs(s)
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
getCoordinatesAndControls(glyphName, ttFont, defaultVerticalOrigin=None)[source]

Return glyph coordinates and controls as expected by “gvar” table.

The coordinates includes four “phantom points” for the glyph metrics, as mandated by the “gvar” spec.

The glyph controls is a namedtuple with the following attributes:
  • numberOfContours: -1 for composite glyphs.
  • endPts: list of indices of end points for each contour in simple

glyphs, or component indices in composite glyphs (used for IUP optimization). - flags: array of contour point flags for simple glyphs (None for composite glyphs). - components: list of base glyph names (str) for each component in composite glyphs (None for simple glyphs).

The “ttFont” and “defaultVerticalOrigin” args are used to compute the “phantom points” (see “getPhantomPoints” method).

Return None if the requested glyphName is not present.

getGlyphID(glyphName)[source]
getGlyphName(glyphID)[source]
getPhantomPoints(glyphName, ttFont, defaultVerticalOrigin=None)[source]

Compute the four “phantom points” for the given glyph from its bounding box and the horizontal and vertical advance widths and sidebearings stored in the ttFont’s “hmtx” and “vmtx” tables.

If the ttFont doesn’t contain a “vmtx” table, the hhea.ascent is used as the vertical origin, and the head.unitsPerEm as the vertical advance.

The “defaultVerticalOrigin” (Optional[int]) is needed when the ttFont contains neither a “vmtx” nor an “hhea” table, as may happen with ‘sparse’ masters. The value should be the hhea.ascent of the default master.

https://docs.microsoft.com/en-us/typography/opentype/spec/tt_instructing_glyphs#phantoms

has_key(glyphName)[source]
keys()[source]
merge(m, tables)
mergeMap = {'glyphOrder': <function sumLists at 0xf4174898>, 'glyphs': <function sumDicts at 0xf4174808>, 'tableTag': <function equal at 0xf4174220>}
padding = 1
prune_post_subset(font, options)
prune_pre_subset(font, options)
removeHinting()[source]
setCoordinates(glyphName, coord, ttFont)[source]

Set coordinates and metrics for the given glyph.

“coord” is an array of GlyphCoordinates which must include the “phantom points” as the last four coordinates.

Both the horizontal/vertical advances and left/top sidebearings in “hmtx” and “vmtx” tables (if any) are updated from four phantom points and the glyph’s bounding boxes.

setGlyphOrder(glyphOrder)[source]
subset_glyphs(s)
toXML(writer, ttFont, splitGlyphs=False)[source]

_g_v_a_r

fontTools.ttLib.tables._g_v_a_r.compileGlyph_(variations, pointCount, axisTags, sharedCoordIndices)[source]
fontTools.ttLib.tables._g_v_a_r.decompileGlyph_(pointCount, sharedTuples, axisTags, data)[source]
class fontTools.ttLib.tables._g_v_a_r.table__g_v_a_r(tag=None)[source]
compile(ttFont)[source]
compileGlyphs_(ttFont, axisTags, sharedCoordIndices)[source]
static compileOffsets_(offsets)[source]

Packs a list of offsets into a ‘gvar’ offset table.

Returns a pair (bytestring, tableFormat). Bytestring is the packed offset table. Format indicates whether the table uses short (tableFormat=0) or long (tableFormat=1) integers. The returned tableFormat should get packed into the flags field of the ‘gvar’ header.

decompile(data, ttFont)[source]
static decompileOffsets_(data, tableFormat, glyphCount)[source]
dependencies = ['fvar', 'glyf']
fromXML(name, attrs, content, ttFont)[source]
static getNumPoints_(glyph)[source]
prune_pre_subset(font, options)
subset_glyphs(s)
toXML(writer, ttFont)[source]

_h_d_m_x

class fontTools.ttLib.tables._h_d_m_x.table__h_d_m_x(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
subset_glyphs(s)
toXML(writer, ttFont)[source]

_h_e_a_d

class fontTools.ttLib.tables._h_e_a_d.table__h_e_a_d(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['maxp', 'loca', 'CFF ']
fromXML(name, attrs, content, ttFont)[source]
mergeMap = {'checkSumAdjustment': <function <lambda> at 0xf3fba808>, 'created': <function current_time at 0xf41748e0>, 'flags': <function mergeBits.<locals>.wrapper at 0xf3fba6a0>, 'fontDirectionHint': <function <lambda> at 0xf3fba658>, 'fontRevision': <built-in function max>, 'glyphDataFormat': <function equal at 0xf4174220>, 'indexToLocFormat': <function recalculate at 0xf4174b68>, 'lowestRecPPEM': <built-in function max>, 'macStyle': <function first at 0xf4174bf8>, 'magicNumber': <function equal at 0xf4174220>, 'modified': <function current_time at 0xf41748e0>, 'tableTag': <function equal at 0xf4174220>, 'tableVersion': <built-in function max>, 'unitsPerEm': <function equal at 0xf4174220>, 'xMax': <built-in function max>, 'xMin': <built-in function min>, 'yMax': <built-in function max>, 'yMin': <built-in function min>}
prune_post_subset(font, options)
toXML(writer, ttFont)[source]

_h_h_e_a

class fontTools.ttLib.tables._h_h_e_a.table__h_h_e_a(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['hmtx', 'glyf', 'CFF ']
fromXML(name, attrs, content, ttFont)[source]
mergeMap = {'*': <function equal at 0xf4174220>, 'advanceWidthMax': <built-in function max>, 'ascent': <built-in function max>, 'caretOffset': <function first at 0xf4174bf8>, 'caretSlopeRise': <function first at 0xf4174bf8>, 'caretSlopeRun': <function first at 0xf4174bf8>, 'descent': <built-in function min>, 'lineGap': <built-in function max>, 'minLeftSideBearing': <built-in function min>, 'minRightSideBearing': <built-in function min>, 'numberOfHMetrics': <function recalculate at 0xf4174b68>, 'tableTag': <function equal at 0xf4174220>, 'tableVersion': <built-in function max>, 'xMaxExtent': <built-in function max>}
recalc(ttFont)[source]
toXML(writer, ttFont)[source]

_h_m_t_x

class fontTools.ttLib.tables._h_m_t_x.table__h_m_t_x(tag=None)[source]
advanceName = 'width'
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
headerTag = 'hhea'
longMetricFormat = 'Hh'
mergeMap = {'metrics': <function sumDicts at 0xf4174808>, 'tableTag': <function equal at 0xf4174220>}
numberOfMetricsName = 'numberOfHMetrics'
sideBearingName = 'lsb'
subset_glyphs(s)
toXML(writer, ttFont)[source]

_k_e_r_n

class fontTools.ttLib.tables._k_e_r_n.KernTable_format_0(apple=False)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
format = 0
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
version = 0
class fontTools.ttLib.tables._k_e_r_n.KernTable_format_unkown(format)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._k_e_r_n.table__k_e_r_n(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
getkern(format)[source]
prune_pre_subset(font, options)
subset_glyphs(s)
toXML(writer, ttFont)[source]

_l_o_c_a

class fontTools.ttLib.tables._l_o_c_a.table__l_o_c_a(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['glyf']
mergeMap = {'*': <function recalculate at 0xf4174b68>, 'tableTag': <function equal at 0xf4174220>}
set(locations)[source]
toXML(writer, ttFont)[source]

_l_t_a_g

class fontTools.ttLib.tables._l_t_a_g.table__l_t_a_g(tag=None)[source]
addTag(tag)[source]

Add ‘tag’ to the list of langauge tags if not already there.

Returns the integer index of ‘tag’ in the list of all tags.

compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

_m_a_x_p

class fontTools.ttLib.tables._m_a_x_p.table__m_a_x_p(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['glyf']
fromXML(name, attrs, content, ttFont)[source]
mergeMap = {'*': <built-in function max>, 'maxFunctionDefs': <function first at 0xf4174bf8>, 'maxInstructionDefs': <function first at 0xf4174bf8>, 'maxStorage': <function first at 0xf4174bf8>, 'numGlyphs': <built-in function sum>, 'tableTag': <function equal at 0xf4174220>, 'tableVersion': <function equal at 0xf4174220>}
prune_pre_subset(font, options)
recalc(ttFont)[source]

Recalculate the font bounding box, and most other maxp values except for the TT instructions values. Also recalculate the value of bit 1 of the flags field and the font bounding box of the ‘head’ table.

testrepr()[source]
toXML(writer, ttFont)[source]

_m_e_t_a

class fontTools.ttLib.tables._m_e_t_a.table__m_e_t_a(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

_n_a_m_e

class fontTools.ttLib.tables._n_a_m_e.NameRecord[source]
encodingIsUnicodeCompatible()[source]
fromXML(name, attrs, content, ttFont)[source]
getEncoding(default='ascii')[source]

Returns the Python encoding name for this name entry based on its platformID, platEncID, and langID. If encoding for these values is not known, by default ‘ascii’ is returned. That can be overriden by passing a value to the default argument.

isUnicode()[source]
toBytes(errors='strict')[source]

If self.string is a bytes object, return it; otherwise try encoding the Unicode string in self.string to bytes using the encoding of this entry as returned by self.getEncoding(); Note that self.getEncoding() returns ‘ascii’ if the encoding is unknown to the library.

If the Unicode string cannot be encoded to bytes in the chosen encoding, the error is handled according to the errors parameter to this function, which is passed to the underlying encode() function; by default it throws a UnicodeEncodeError exception.

toStr(errors='strict')[source]
toUnicode(errors='strict')[source]

If self.string is a Unicode string, return it; otherwise try decoding the bytes in self.string to a Unicode string using the encoding of this entry as returned by self.getEncoding(); Note that self.getEncoding() returns ‘ascii’ if the encoding is unknown to the library.

Certain heuristics are performed to recover data from bytes that are ill-formed in the chosen encoding, or that otherwise look misencoded (mostly around bad UTF-16BE encoded bytes, or bytes that look like UTF-16BE but marked otherwise). If the bytes are ill-formed and the heuristics fail, the error is handled according to the errors parameter to this function, which is passed to the underlying decode() function; by default it throws a UnicodeDecodeError exception.

Note: The mentioned heuristics mean that roundtripping a font to XML and back to binary might recover some misencoded data whereas just loading the font and saving it back will not change them.

toXML(writer, ttFont)[source]
fontTools.ttLib.tables._n_a_m_e.makeName(string, nameID, platformID, platEncID, langID)[source]
class fontTools.ttLib.tables._n_a_m_e.table__n_a_m_e(tag=None)[source]
addMultilingualName(names, ttFont=None, nameID=None, windows=True, mac=True)[source]

Add a multilingual name, returning its name ID

‘names’ is a dictionary with the name in multiple languages, such as {‘en’: ‘Pale’, ‘de’: ‘Blaß’, ‘de-CH’: ‘Blass’}. The keys can be arbitrary IETF BCP 47 language codes; the values are Unicode strings.

‘ttFont’ is the TTFont to which the names are added, or None. If present, the font’s ‘ltag’ table can get populated to store exotic language codes, which allows encoding names that otherwise cannot get encoded at all.

‘nameID’ is the name ID to be used, or None to let the library pick an unused name ID.

If ‘windows’ is True, a platformID=3 name record will be added. If ‘mac’ is True, a platformID=1 name record will be added.

addName(string, platforms=((1, 0, 0), (3, 1, 1033)), minNameID=255)[source]

Add a new name record containing ‘string’ for each (platformID, platEncID, langID) tuple specified in the ‘platforms’ list.

The nameID is assigned in the range between ‘minNameID’+1 and 32767 (inclusive), following the last nameID in the name table. If no ‘platforms’ are specified, two English name records are added, one for the Macintosh (platformID=0), and one for the Windows platform (3).

The ‘string’ must be a Unicode string, so it can be encoded with different, platform-specific encodings.

Return the new nameID.

compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['ltag']
fromXML(name, attrs, content, ttFont)[source]
getDebugName(nameID)[source]
getName(nameID, platformID, platEncID, langID=None)[source]
mergeMap = {'names': <function first at 0xf4174bf8>, 'tableTag': <function equal at 0xf4174220>}
prune_pre_subset(font, options)
setName(string, nameID, platformID, platEncID, langID)[source]

Set the ‘string’ for the name record identified by ‘nameID’, ‘platformID’, ‘platEncID’ and ‘langID’. If a record with that nameID doesn’t exist, create it and append to the name table.

‘string’ can be of type str (unicode in PY2) or bytes. In the latter case, it is assumed to be already encoded with the correct plaform-specific encoding identified by the (platformID, platEncID, langID) triplet. A warning is issued to prevent unexpected results.

toXML(writer, ttFont)[source]

_p_o_s_t

fontTools.ttLib.tables._p_o_s_t.packPStrings(strings)[source]
class fontTools.ttLib.tables._p_o_s_t.table__p_o_s_t(tag=None)[source]
build_psNameMapping(ttFont)[source]
compile(ttFont)[source]
decode_format_1_0(data, ttFont)[source]
decode_format_2_0(data, ttFont)[source]
decode_format_3_0(data, ttFont)[source]
decode_format_4_0(data, ttFont)[source]
decompile(data, ttFont)[source]
encode_format_2_0(ttFont)[source]
encode_format_4_0(ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
getGlyphOrder()[source]

This function will get called by a ttLib.TTFont instance. Do not call this function yourself, use TTFont().getGlyphOrder() or its relatives instead!

mergeMap = {'*': <function first at 0xf4174bf8>, 'extraNames': <function <lambda> at 0xf3fd60b8>, 'formatType': <built-in function max>, 'isFixedPitch': <built-in function min>, 'mapping': <function onlyExisting.<locals>.wrapper at 0xf3fd6100>, 'maxMemType1': <function <lambda> at 0xf3fd6148>, 'maxMemType42': <function <lambda> at 0xf3fba070>, 'minMemType1': <built-in function max>, 'minMemType42': <built-in function max>, 'tableTag': <function equal at 0xf4174220>}
prune_pre_subset(font, options)
subset_glyphs(s)
toXML(writer, ttFont)[source]
fontTools.ttLib.tables._p_o_s_t.unpackPStrings(data)[source]

_p_r_e_p

class fontTools.ttLib.tables._p_r_e_p.table__p_r_e_p(tag=None)[source]
mergeMap(lst)

_s_b_i_x

class fontTools.ttLib.tables._s_b_i_x.sbixStrikeOffset[source]
class fontTools.ttLib.tables._s_b_i_x.table__s_b_i_x(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
subset_glyphs(s)
toXML(xmlWriter, ttFont)[source]

_t_r_a_k

class fontTools.ttLib.tables._t_r_a_k.TrackData(initialdata={})[source]
compile(offset)[source]
decompile(data, offset)[source]
fromXML(name, attrs, content, ttFont)[source]
keys() → a set-like object providing a view on D's keys[source]
sizes()[source]
toXML(writer, ttFont)[source]
tracks()

D.keys() -> a set-like object providing a view on D’s keys

class fontTools.ttLib.tables._t_r_a_k.TrackTableEntry(values={}, nameIndex=None)[source]
fromXML(name, attrs, content, ttFont)[source]
keys() → a set-like object providing a view on D's keys[source]
sizes()

D.keys() -> a set-like object providing a view on D’s keys

toXML(writer, ttFont)[source]
class fontTools.ttLib.tables._t_r_a_k.table__t_r_a_k(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['name']
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

_v_h_e_a

class fontTools.ttLib.tables._v_h_e_a.table__v_h_e_a(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['vmtx', 'glyf', 'CFF ']
fromXML(name, attrs, content, ttFont)[source]
mergeMap = {'*': <function equal at 0xf4174220>, 'advanceHeightMax': <built-in function max>, 'ascent': <built-in function max>, 'caretOffset': <function first at 0xf4174bf8>, 'caretSlopeRise': <function first at 0xf4174bf8>, 'caretSlopeRun': <function first at 0xf4174bf8>, 'descent': <built-in function min>, 'lineGap': <built-in function max>, 'minBottomSideBearing': <built-in function min>, 'minTopSideBearing': <built-in function min>, 'numberOfVMetrics': <function recalculate at 0xf4174b68>, 'tableTag': <function equal at 0xf4174220>, 'tableVersion': <built-in function max>, 'yMaxExtent': <built-in function max>}
recalc(ttFont)[source]
reserved0
toXML(writer, ttFont)[source]

_v_m_t_x

class fontTools.ttLib.tables._v_m_t_x.table__v_m_t_x(tag=None)[source]
advanceName = 'height'
headerTag = 'vhea'
mergeMap = {'metrics': <function sumDicts at 0xf4174808>, 'tableTag': <function equal at 0xf4174220>}
numberOfMetricsName = 'numberOfVMetrics'
sideBearingName = 'tsb'
subset_glyphs(s)

asciiTable

class fontTools.ttLib.tables.asciiTable.asciiTable(tag=None)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

B_A_S_E

class fontTools.ttLib.tables.B_A_S_E_.table_B_A_S_E_(tag=None)[source]
mergeMap = {'table': <function mergeObjects at 0xf4174778>, 'tableTag': <function onlyExisting.<locals>.wrapper at 0xf406b220>}

BitmapGlyphMetrics

class fontTools.ttLib.tables.BitmapGlyphMetrics.BigGlyphMetrics[source]
binaryFormat = '\n > # big endian\n height: B\n width: B\n horiBearingX: b\n horiBearingY: b\n horiAdvance: B\n vertBearingX: b\n vertBearingY: b\n vertAdvance: B\n'
class fontTools.ttLib.tables.BitmapGlyphMetrics.BitmapGlyphMetrics[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables.BitmapGlyphMetrics.SmallGlyphMetrics[source]
binaryFormat = '\n > # big endian\n height: B\n width: B\n BearingX: b\n BearingY: b\n Advance: B\n'

C_B_D_T

class fontTools.ttLib.tables.C_B_D_T_.ColorBitmapGlyph(data, ttFont)[source]
fileExtension = '.png'
xmlDataFunctions = {'bitwise': (<function _writeBitwiseImageData at 0xf40e4b20>, <function _readBitwiseImageData at 0xf40e4a90>), 'extfile': (<function _writeExtFileImageData at 0xf40e4ad8>, <function _readExtFileImageData at 0xf40e4028>), 'raw': (<function _writeRawImageData at 0xf40e4c88>, <function _readRawImageData at 0xf40e4bf8>)}
class fontTools.ttLib.tables.C_B_D_T_.cbdt_bitmap_format_17(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.C_B_D_T_.cbdt_bitmap_format_18(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.C_B_D_T_.cbdt_bitmap_format_19(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.C_B_D_T_.table_C_B_D_T_(tag=None)[source]
getImageFormatClass(imageFormat)[source]
locatorName = 'CBLC'

C_B_L_C

class fontTools.ttLib.tables.C_B_L_C_.table_C_B_L_C_(tag=None)[source]
dependencies = ['CBDT']

C_F_F

class fontTools.ttLib.tables.C_F_F_.table_C_F_F_(tag=None)[source]
closure_glyphs(s)
compile(otFont)[source]
decompile(data, otFont)[source]
desubroutinize()
fromXML(name, attrs, content, otFont)[source]
getGlyphOrder()[source]
haveGlyphNames()[source]
prune_post_subset(ttfFont, options)
prune_pre_subset(font, options)
remove_hints()
remove_unused_subroutines()
setGlyphOrder(glyphOrder)[source]
subset_glyphs(s)
toXML(writer, otFont)[source]

C_F_F__2

class fontTools.ttLib.tables.C_F_F__2.table_C_F_F__2(tag=None)[source]
compile(otFont)[source]
decompile(data, otFont)[source]

C_O_L_R

class fontTools.ttLib.tables.C_O_L_R_.LayerRecord(name=None, colorID=None)[source]
fromXML(eltname, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables.C_O_L_R_.table_C_O_L_R_(tag=None)[source]

This table is structured so that you can treat it like a dictionary keyed by glyph name. ttFont[‘COLR’][<glyphName>] will return the color layers for any glyph ttFont[‘COLR’][<glyphName>] = <value> will set the color layers for any glyph.

closure_glyphs(s)
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
subset_glyphs(s)
toXML(writer, ttFont)[source]

C_P_A_L

class fontTools.ttLib.tables.C_P_A_L_.Color[source]
classmethod fromHex(value)[source]
hex()[source]
toXML(writer, ttFont, index=None)[source]
class fontTools.ttLib.tables.C_P_A_L_.table_C_P_A_L_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
prune_post_subset(font, options)
toXML(writer, ttFont)[source]

D_S_I_G

class fontTools.ttLib.tables.D_S_I_G_.SignatureRecord[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
fontTools.ttLib.tables.D_S_I_G_.b64encode(b)[source]
fontTools.ttLib.tables.D_S_I_G_.pem_spam(l, spam={'': True, '-----BEGIN PKCS7-----': True, '-----END PKCS7-----': True})
class fontTools.ttLib.tables.D_S_I_G_.table_D_S_I_G_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
prune_pre_subset(font, options)
toXML(xmlWriter, ttFont)[source]

DefaultTable

class fontTools.ttLib.tables.DefaultTable.DefaultTable(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = []
fromXML(name, attrs, content, ttFont)[source]
merge(m, tables)
toXML(writer, ttFont, **kwargs)[source]

E_B_D_T

class fontTools.ttLib.tables.E_B_D_T_.BitAlignedBitmapMixin[source]
getRow(row, bitDepth=1, metrics=None, reverseBytes=False)[source]
setRows(dataRows, bitDepth=1, metrics=None, reverseBytes=False)[source]
class fontTools.ttLib.tables.E_B_D_T_.BitmapGlyph(data, ttFont)[source]
fileExtension = '.bin'
fromXML(name, attrs, content, ttFont)[source]
getFormat()[source]
readData(name, attrs, content, ttFont)[source]
readMetrics(name, attrs, content, ttFont)[source]
toXML(strikeIndex, glyphName, writer, ttFont)[source]
writeData(strikeIndex, glyphName, writer, ttFont)[source]
writeMetrics(writer, ttFont)[source]
xmlDataFunctions = {'bitwise': (<function _writeBitwiseImageData at 0xf40e4b20>, <function _readBitwiseImageData at 0xf40e4a90>), 'extfile': (<function _writeExtFileImageData at 0xf40e4ad8>, <function _readExtFileImageData at 0xf40e4028>), 'raw': (<function _writeRawImageData at 0xf40e4c88>, <function _readRawImageData at 0xf40e4bf8>), 'row': (<function _writeRowImageData at 0xf40e4bb0>, <function _readRowImageData at 0xf40e4b68>)}
fontTools.ttLib.tables.E_B_D_T_.BitmapPlusBigMetricsMixin

alias of fontTools.ttLib.tables.E_B_D_T_._createBitmapPlusMetricsMixin.<locals>.BitmapPlusMetricsMixin

fontTools.ttLib.tables.E_B_D_T_.BitmapPlusSmallMetricsMixin

alias of fontTools.ttLib.tables.E_B_D_T_._createBitmapPlusMetricsMixin.<locals>.BitmapPlusMetricsMixin

class fontTools.ttLib.tables.E_B_D_T_.ByteAlignedBitmapMixin[source]
getRow(row, bitDepth=1, metrics=None, reverseBytes=False)[source]
setRows(dataRows, bitDepth=1, metrics=None, reverseBytes=False)[source]
class fontTools.ttLib.tables.E_B_D_T_.ComponentBitmapGlyph(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(strikeIndex, glyphName, writer, ttFont)[source]
class fontTools.ttLib.tables.E_B_D_T_.EbdtComponent[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables.E_B_D_T_.ebdt_bitmap_format_1(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_D_T_.ebdt_bitmap_format_2(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_D_T_.ebdt_bitmap_format_5(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_D_T_.ebdt_bitmap_format_6(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_D_T_.ebdt_bitmap_format_7(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_D_T_.ebdt_bitmap_format_8(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_D_T_.ebdt_bitmap_format_9(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_D_T_.table_E_B_D_T_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
getImageFormatClass(imageFormat)[source]
locatorName = 'EBLC'
subset_glyphs(s)
toXML(writer, ttFont)[source]

E_B_L_C

class fontTools.ttLib.tables.E_B_L_C_.BitmapSizeTable[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables.E_B_L_C_.EblcIndexSubTable(data, ttFont)[source]
compile(ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
padBitmapData(data)[source]
readMetrics(name, attrs, content, ttFont)[source]
removeSkipGlyphs()[source]
toXML(writer, ttFont)[source]
writeMetrics(writer, ttFont)[source]
class fontTools.ttLib.tables.E_B_L_C_.FixedSizeIndexSubTableMixin[source]
padBitmapData(data)[source]
readMetrics(name, attrs, content, ttFont)[source]
writeMetrics(writer, ttFont)[source]
class fontTools.ttLib.tables.E_B_L_C_.SbitLineMetrics[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(name, writer, ttFont)[source]
class fontTools.ttLib.tables.E_B_L_C_.Strike[source]
fromXML(name, attrs, content, ttFont, locator)[source]
toXML(strikeIndex, writer, ttFont)[source]
class fontTools.ttLib.tables.E_B_L_C_.eblc_index_sub_table_1(data, ttFont)[source]
class fontTools.ttLib.tables.E_B_L_C_.eblc_index_sub_table_2(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_L_C_.eblc_index_sub_table_3(data, ttFont)[source]
class fontTools.ttLib.tables.E_B_L_C_.eblc_index_sub_table_4(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_L_C_.eblc_index_sub_table_5(data, ttFont)[source]
compile(ttFont)[source]
decompile()[source]
class fontTools.ttLib.tables.E_B_L_C_.table_E_B_L_C_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['EBDT']
fromXML(name, attrs, content, ttFont)[source]
getIndexFormatClass(indexFormat)[source]
subset_glyphs(s)
toXML(writer, ttFont)[source]

F_F_T_M

class fontTools.ttLib.tables.F_F_T_M_.table_F_F_T_M_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

G_D_E_F

class fontTools.ttLib.tables.G_D_E_F_.table_G_D_E_F_(tag=None)[source]
mergeMap = {'table': <function mergeObjects at 0xf4174778>, 'tableTag': <function onlyExisting.<locals>.wrapper at 0xf406b220>}
prune_post_subset(font, options)
subset_glyphs(s)

G_M_A_P

class fontTools.ttLib.tables.G_M_A_P_.GMAPRecord(uv=0, cid=0, gid=0, ggid=0, name='')[source]
compile(ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables.G_M_A_P_.table_G_M_A_P_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = []
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

G_P_K_G

class fontTools.ttLib.tables.G_P_K_G_.table_G_P_K_G_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

G_P_O_S

class fontTools.ttLib.tables.G_P_O_S_.table_G_P_O_S_(tag=None)[source]
mergeMap = {'table': <function mergeObjects at 0xf4174778>, 'tableTag': <function onlyExisting.<locals>.wrapper at 0xf406b220>}
neuter_lookups(lookup_indices)

Sets lookups not in lookup_indices to None.

prune_features()

Remove unreferenced features

prune_lookups(remap=True)

Remove (default) or neuter unreferenced lookups

prune_post_subset(font, options)
prune_pre_subset(font, options)
remove_redundant_langsys()
retain_empty_scripts()
subset_feature_tags(feature_tags)
subset_glyphs(s)
subset_lookups(lookup_indices)

Retains specified lookups, then removes empty features, language systems, and scripts.

subset_script_tags(script_tags)

G_S_U_B

class fontTools.ttLib.tables.G_S_U_B_.table_G_S_U_B_(tag=None)[source]
closure_glyphs(s)
merge(m, tables)
mergeMap = {'table': <function mergeObjects at 0xf4174778>, 'tableTag': <function onlyExisting.<locals>.wrapper at 0xf406b220>}
neuter_lookups(lookup_indices)

Sets lookups not in lookup_indices to None.

prune_features()

Remove unreferenced features

prune_lookups(remap=True)

Remove (default) or neuter unreferenced lookups

prune_post_subset(font, options)
prune_pre_subset(font, options)
remove_redundant_langsys()
retain_empty_scripts()
subset_feature_tags(feature_tags)
subset_glyphs(s)
subset_lookups(lookup_indices)

Retains specified lookups, then removes empty features, language systems, and scripts.

subset_script_tags(script_tags)

H_V_A_R

class fontTools.ttLib.tables.H_V_A_R_.table_H_V_A_R_(tag=None)[source]
subset_glyphs(s)

J_S_T_F

class fontTools.ttLib.tables.J_S_T_F_.table_J_S_T_F_(tag=None)[source]
mergeMap = {'table': <function mergeObjects at 0xf4174778>, 'tableTag': <function onlyExisting.<locals>.wrapper at 0xf406b220>}

L_T_S_H

class fontTools.ttLib.tables.L_T_S_H_.table_L_T_S_H_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

M_A_T_H

class fontTools.ttLib.tables.M_A_T_H_.table_M_A_T_H_(tag=None)[source]
closure_glyphs(s)
mergeMap = {'table': <function mergeObjects at 0xf4174778>, 'tableTag': <function onlyExisting.<locals>.wrapper at 0xf406b220>}
subset_glyphs(s)

M_E_T_A

class fontTools.ttLib.tables.M_E_T_A_.GlyphRecord[source]
compile(parentTable)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables.M_E_T_A_.StringRecord[source]
compile(parentTable)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
fontTools.ttLib.tables.M_E_T_A_.getLabelString(labelID)[source]
fontTools.ttLib.tables.M_E_T_A_.mapUTF8toXML(string)[source]
fontTools.ttLib.tables.M_E_T_A_.mapXMLToUTF8(string)[source]
class fontTools.ttLib.tables.M_E_T_A_.table_M_E_T_A_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = []
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

M_V_A_R

class fontTools.ttLib.tables.M_V_A_R_.table_M_V_A_R_(tag=None)[source]

O_S_2f_2

class fontTools.ttLib.tables.O_S_2f_2.Panose[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
fontTools.ttLib.tables.O_S_2f_2.intersectUnicodeRanges(unicodes, inverse=False)[source]

Intersect a sequence of (int) Unicode codepoints with the Unicode block ranges defined in the OpenType specification v1.7, and return the set of ‘ulUnicodeRanges’ bits for which there is at least ONE intersection. If ‘inverse’ is True, return the the bits for which there is NO intersection.

>>> intersectUnicodeRanges([0x0410]) == {9}
True
>>> intersectUnicodeRanges([0x0410, 0x1F000]) == {9, 57, 122}
True
>>> intersectUnicodeRanges([0x0410, 0x1F000], inverse=True) == (
...     set(range(123)) - {9, 57, 122})
True
class fontTools.ttLib.tables.O_S_2f_2.table_O_S_2f_2(tag=None)[source]

the OS/2 table

compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['head']
fromXML(name, attrs, content, ttFont)[source]
fsFirstCharIndex
fsLastCharIndex
getUnicodeRanges()[source]

Return the set of ‘ulUnicodeRange*’ bits currently enabled.

merge(m, tables)
mergeMap = {'*': <function first at 0xf4174bf8>, 'fsFirstCharIndex': <built-in function min>, 'fsLastCharIndex': <built-in function max>, 'fsType': <function mergeOs2FsType at 0xf3fba190>, 'panose': <function first at 0xf4174bf8>, 'sTypoAscender': <built-in function max>, 'sTypoDescender': <built-in function min>, 'sTypoLineGap': <built-in function max>, 'tableTag': <function equal at 0xf4174220>, 'ulCodePageRange1': <function onlyExisting.<locals>.wrapper at 0xf3fba580>, 'ulCodePageRange2': <function onlyExisting.<locals>.wrapper at 0xf3fba3d0>, 'ulUnicodeRange1': <function bitwise_or at 0xf41747c0>, 'ulUnicodeRange2': <function bitwise_or at 0xf41747c0>, 'ulUnicodeRange3': <function bitwise_or at 0xf41747c0>, 'ulUnicodeRange4': <function bitwise_or at 0xf41747c0>, 'usMaxContex': <function onlyExisting.<locals>.wrapper at 0xf3fba0b8>, 'usWinAscent': <built-in function max>, 'usWinDescent': <built-in function max>, 'version': <built-in function max>, 'xAvgCharWidth': <function avg_int at 0xf4174970>}
recalcUnicodeRanges(ttFont, pruneOnly=False)[source]

Intersect the codepoints in the font’s Unicode cmap subtables with the Unicode block ranges defined in the OpenType specification (v1.7), and set the respective ‘ulUnicodeRange*’ bits if there is at least ONE intersection. If ‘pruneOnly’ is True, only clear unused bits with NO intersection.

setUnicodeRanges(bits)[source]

Set the ‘ulUnicodeRange*’ fields to the specified ‘bits’.

toXML(writer, ttFont)[source]
updateFirstAndLastCharIndex(ttFont)[source]
usMaxContex

otBase

class fontTools.ttLib.tables.otBase.BaseTTXConverter(tag=None)[source]

Generic base class for TTX table converters. It functions as an adapter between the TTX (ttLib actually) table model and the model we use for OpenType tables, which is necessarily subtly different.

compile(font)[source]

Create a top-level OTTableWriter for the GPOS/GSUB table. Call the compile method for the the table

for each ‘converter’ record in the table converter list
call converter’s write method for each item in the value.
  • For simple items, the write method adds a string to the

writer’s self.items list. - For Struct/Table/Subtable items, it add first adds new writer to the to the writer’s self.items, then calls the item’s compile method. This creates a tree of writers, rooted at the GUSB/GPOS writer, with each writer representing a table, and the writer.items list containing the child data strings and writers.

call the getAllData method

call _doneWriting, which removes duplicates call _gatherTables. This traverses the tables, adding unique occurences to a flat list of tables Traverse the flat list of tables, calling getDataLength on each to update their position Traverse the flat list of tables again, calling getData each get the data in the table, now that pos’s and offset are known.

If a lookup subtable overflows an offset, we have to start all over.

decompile(data, font)[source]
fromXML(name, attrs, content, font)[source]
toXML(writer, font)[source]
class fontTools.ttLib.tables.otBase.BaseTable[source]

Generic base class for all OpenType (sub)tables.

compile(writer, font)[source]
decompile(reader, font)[source]
ensureDecompiled()[source]
fromXML(name, attrs, content, font)[source]
getConverterByName(name)[source]
getConverters()[source]
classmethod getRecordSize(reader)[source]
populateDefaults(propagator=None)[source]
readFormat(reader)[source]
toXML(xmlWriter, font, attrs=None, name=None)[source]
toXML2(xmlWriter, font)[source]
writeFormat(writer)[source]
class fontTools.ttLib.tables.otBase.CountReference(table, name, size=None, value=None)[source]

A reference to a Count value, not a count of references.

getCountData()[source]
setValue(value)[source]
class fontTools.ttLib.tables.otBase.FormatSwitchingBaseTable[source]

Minor specialization of BaseTable, for tables that have multiple formats, eg. CoverageFormat1 vs. CoverageFormat2.

getConverterByName(name)[source]
getConverters()[source]
classmethod getRecordSize(reader)[source]
readFormat(reader)[source]
toXML(xmlWriter, font, attrs=None, name=None)[source]
writeFormat(writer)[source]
exception fontTools.ttLib.tables.otBase.OTLOffsetOverflowError(overflowErrorRecord)[source]
class fontTools.ttLib.tables.otBase.OTTableReader(data, localState=None, offset=0, tableTag=None)[source]

Helper class to retrieve data from an OpenType table.

advance(count)[source]
copy()[source]
data
getSubReader(offset)[source]
localState
offset
pos
readData(count)[source]
readInt8()[source]
readLong()[source]
readShort()[source]
readTag()[source]
readUInt24()[source]
readUInt8()[source]
readULong()[source]
readUShort()[source]
readUShortArray(count)[source]
seek(pos)[source]
tableTag
class fontTools.ttLib.tables.otBase.OTTableWriter(localState=None, tableTag=None)[source]

Helper class to gather and assemble data for OpenType tables.

getAllData()[source]

Assemble all data, including all subtables.

getData()[source]

Assemble the data for this writer/table, without subtables.

getDataLength()[source]

Return the length of this table in bytes, without subtables.

getOverflowErrorRecord(item)[source]
getSubWriter()[source]
writeCountReference(table, name, size=2, value=None)[source]
writeData(data)[source]
writeInt8(value)[source]
writeLong(value)[source]
writeShort(value)[source]
writeStruct(format, values)[source]
writeSubTable(subWriter)[source]
writeTag(tag)[source]
writeUInt24(value)[source]
writeUInt8(value)[source]
writeULong(value)[source]
writeUShort(value)[source]
class fontTools.ttLib.tables.otBase.OverflowErrorRecord(overflowTuple)[source]
class fontTools.ttLib.tables.otBase.ValueRecord(valueFormat=None, src=None)[source]
fromXML(name, attrs, content, font)[source]
getFormat()[source]
toXML(xmlWriter, font, valueName, attrs=None)[source]
class fontTools.ttLib.tables.otBase.ValueRecordFactory(valueFormat)[source]

Given a format code, this object convert ValueRecords.

readValueRecord(reader, font)[source]
writeValueRecord(writer, font, valueRecord)[source]
fontTools.ttLib.tables.otBase.packUInt8(value)[source]
fontTools.ttLib.tables.otBase.packULong(value)[source]
fontTools.ttLib.tables.otBase.packUShort(value)[source]

otConverters

class fontTools.ttLib.tables.otConverters.AATLookup(name, repeat, aux, tableClass)[source]
BIN_SEARCH_HEADER_SIZE = 10
buildFormat0(writer, font, values)[source]
buildFormat2(writer, font, values)[source]
buildFormat6(writer, font, values)[source]
buildFormat8(writer, font, values)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

readFormat0(reader, font)[source]
readFormat2(reader, font)[source]
readFormat4(reader, font)[source]
readFormat6(reader, font)[source]
readFormat8(reader, font)[source]
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

static writeBinSearchHeader(writer, numUnits, unitSize)[source]
writeFormat0(writer, font, values)[source]
writeFormat2(writer, font, segments)[source]
writeFormat6(writer, font, values)[source]
writeFormat8(writer, font, values)[source]
xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.AATLookupWithDataOffset(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.BaseConverter(name, repeat, aux, tableClass=None)[source]

Base class for converter objects. Apart from the constructor, this is an abstract class.

getRecordSize(reader)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

readArray(reader, font, tableDict, count)[source]

Read an array of values from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

writeArray(writer, font, tableDict, values)[source]
xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.CIDGlyphMap(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.Char64(name, repeat, aux, tableClass=None)[source]

An ASCII string with up to 64 characters.

Unused character positions are filled with 0x00 bytes. Used in Apple AAT fonts in the gcid table.

read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 64
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.ComputedInt(name, repeat, aux, tableClass=None)[source]
xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.ComputedUInt8(name, repeat, aux, tableClass=None)[source]
class fontTools.ttLib.tables.otConverters.ComputedULong(name, repeat, aux, tableClass=None)[source]
class fontTools.ttLib.tables.otConverters.ComputedUShort(name, repeat, aux, tableClass=None)[source]
class fontTools.ttLib.tables.otConverters.DeciPoints(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 2
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.DeltaValue(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.ExtSubTable(name, repeat, aux, tableClass=None)[source]
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.F2Dot14(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 2
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.FeatureParams(name, repeat, aux, tableClass=None)[source]
getConverter(featureTag)[source]
class fontTools.ttLib.tables.otConverters.Fixed(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 4
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.Flags32(name, repeat, aux, tableClass=None)[source]
xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.FloatValue(name, repeat, aux, tableClass=None)[source]
xmlRead(attrs, content, font)[source]

Read a value from XML.

class fontTools.ttLib.tables.otConverters.GlyphCIDMap(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.GlyphID(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

readArray(reader, font, tableDict, count)[source]

Read an array of values from the reader.

staticSize = 2
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.Int8(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 1
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.IntValue(name, repeat, aux, tableClass=None)[source]
xmlRead(attrs, content, font)[source]

Read a value from XML.

class fontTools.ttLib.tables.otConverters.LTable(name, repeat, aux, tableClass=None)[source]
longOffset = True
readOffset(reader)[source]
staticSize = 4
class fontTools.ttLib.tables.otConverters.Long(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 4
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.MorxSubtableConverter(name, repeat, aux)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.NameID(name, repeat, aux, tableClass=None)[source]
xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.STXHeader(name, repeat, aux, tableClass)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.Short(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 2
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.SimpleValue(name, repeat, aux, tableClass=None)[source]
xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.Struct(name, repeat, aux, tableClass=None)[source]
getRecordSize(reader)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.StructWithLength(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.SubStruct(name, repeat, aux, tableClass=None)[source]
getConverter(tableType, lookupType)[source]
xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.SubTable(name, repeat, aux, tableClass=None)[source]
getConverter(tableType, lookupType)[source]
xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.Table(name, repeat, aux, tableClass=None)[source]
longOffset = False
read(reader, font, tableDict)[source]

Read a value from the reader.

readOffset(reader)[source]
staticSize = 2
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

writeNullOffset(writer)[source]
class fontTools.ttLib.tables.otConverters.Tag(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 4
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.UInt24(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 3
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.UInt8(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 1
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.ULong(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 4
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.UShort(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 2
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.ValueFormat(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 2
write(writer, font, tableDict, format, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.ValueRecord(name, repeat, aux, tableClass=None)[source]
getRecordSize(reader)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.VarDataValue(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

class fontTools.ttLib.tables.otConverters.VarIdxMapValue(name, repeat, aux, tableClass=None)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

class fontTools.ttLib.tables.otConverters.Version(name, repeat, aux, tableClass=None)[source]
static fromFloat(v)[source]
read(reader, font, tableDict)[source]

Read a value from the reader.

staticSize = 4
write(writer, font, tableDict, value, repeatIndex=None)[source]

Write a value to the writer.

xmlRead(attrs, content, font)[source]

Read a value from XML.

xmlWrite(xmlWriter, font, value, name, attrs)[source]

Write a value to XML.

fontTools.ttLib.tables.otConverters.buildConverters(tableSpec, tableNamespace)[source]

Given a table spec from otData.py, build a converter object for each field of the table. This is called for each table in otData.py, and the results are assigned to the corresponding class in otTables.py.

fontTools.ttLib.tables.otConverters.istuple(t)

otData

otTables

fontTools.ttLib.tables.otTables – A collection of classes representing the various OpenType subtables.

Most are constructed upon import from data in otData.py, all are populated with converter objects from otConverters.py.

class fontTools.ttLib.tables.otTables.AATAction[source]
static compileActions(font, states)[source]
class fontTools.ttLib.tables.otTables.AATLookupSegment
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'firstGlyph': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d098f8>, 'lastGlyph': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d098e0>, 'value': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09910>}
class fontTools.ttLib.tables.otTables.AATState[source]
class fontTools.ttLib.tables.otTables.AATStateTable[source]
class fontTools.ttLib.tables.otTables.AlternateSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>]
convertersByName = {'Alternate': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb4f0>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb4a8>}
class fontTools.ttLib.tables.otTables.AlternateSubst[source]
LookupType = 3
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb460>, Struct of <class 'fontTools.ttLib.tables.otTables.AlternateSet'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'AlternateSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb460>, 'AlternateSet': Struct of <class 'fontTools.ttLib.tables.otTables.AlternateSet'>}}
fromXML(name, attrs, content, font)[source]
mapLookups(lookupMap)
may_have_non_1to1()
populateDefaults(propagator=None)[source]
postRead(rawTable, font)[source]
preWrite(font)[source]
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
toXML2(xmlWriter, font)[source]
class fontTools.ttLib.tables.otTables.Anchor
converters = {1: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb1f0>, <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb208>], 2: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb220>, <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb238>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb250>], 3: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb268>, <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb280>, Struct of <class 'fontTools.ttLib.tables.otTables.Device'>, Struct of <class 'fontTools.ttLib.tables.otTables.Device'>]}
convertersByName = {1: {'XCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb1f0>, 'YCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb208>}, 2: {'XCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb220>, 'YCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb238>, 'AnchorPoint': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb250>}, 3: {'XCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb268>, 'YCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4cfb280>, 'XDeviceTable': Struct of <class 'fontTools.ttLib.tables.otTables.Device'>, 'YDeviceTable': Struct of <class 'fontTools.ttLib.tables.otTables.Device'>}}
prune_hints()
class fontTools.ttLib.tables.otTables.AnchorGlyphData
converters = [<fontTools.ttLib.tables.otConverters.ComputedULong object>, Struct of <class 'fontTools.ttLib.tables.otTables.AnchorPoint'>]
convertersByName = {'AnchorPoint': Struct of <class 'fontTools.ttLib.tables.otTables.AnchorPoint'>, 'AnchorPointCount': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d09958>}
class fontTools.ttLib.tables.otTables.AnchorPoint
converters = [<fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>]
convertersByName = {'XCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d099a0>, 'YCoordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d099b8>}
class fontTools.ttLib.tables.otTables.AnchorPoints
converters = {0: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09940>, <fontTools.ttLib.tables.otConverters.AATLookupWithDataOffset object at 0xf4d09850>]}
convertersByName = {0: {'Flags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09940>, 'Anchors': <fontTools.ttLib.tables.otConverters.AATLookupWithDataOffset object at 0xf4d09850>}}
class fontTools.ttLib.tables.otTables.AttachList
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.AttachPoint'>]
convertersByName = {'AttachPoint': Struct of <class 'fontTools.ttLib.tables.otTables.AttachPoint'>, 'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbe50>}
mergeMap = {'AttachPoint': <function sumLists at 0xf4174898>, 'Coverage': <function mergeObjects at 0xf4174778>, 'GlyphCount': <built-in function sum>}
class fontTools.ttLib.tables.otTables.AttachPoint
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'PointCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbf40>, 'PointIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfbf88>}
class fontTools.ttLib.tables.otTables.Axis
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.BaseTagList'>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseScriptList'>]
convertersByName = {'BaseScriptList': Struct of <class 'fontTools.ttLib.tables.otTables.BaseScriptList'>, 'BaseTagList': Struct of <class 'fontTools.ttLib.tables.otTables.BaseTagList'>}
mergeMap = {'*': <function mergeObjects at 0xf4174778>}
class fontTools.ttLib.tables.otTables.AxisRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, <fontTools.ttLib.tables.otConverters.NameID object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UInt8 object>]
convertersByName = {'AxisNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d007c0>, 'AxisOrdering': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d007d8>, 'AxisTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d007a8>, 'MoreBytes': <fontTools.ttLib.tables.otConverters.UInt8 object at 0xf4d007f0>}
class fontTools.ttLib.tables.otTables.AxisRecordArray
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.AxisRecord'>]
convertersByName = {'Axis': Struct of <class 'fontTools.ttLib.tables.otTables.AxisRecord'>}
class fontTools.ttLib.tables.otTables.AxisValue
converters = {1: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00820>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00838>, <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d00850>, <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00868>], 2: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00898>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d008b0>, <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d008c8>, <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d008e0>, <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d008f8>, <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00910>], 3: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00928>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00940>, <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d00958>, <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00970>, <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00988>], 4: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00790>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d009a0>, <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d009b8>, Struct of <class 'fontTools.ttLib.tables.otTables.AxisValueRecord'>]}
convertersByName = {1: {'AxisIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00820>, 'Flags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00838>, 'ValueNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d00850>, 'Value': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00868>}, 2: {'AxisIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00898>, 'Flags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d008b0>, 'ValueNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d008c8>, 'NominalValue': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d008e0>, 'RangeMinValue': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d008f8>, 'RangeMaxValue': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00910>}, 3: {'AxisIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00928>, 'Flags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00940>, 'ValueNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d00958>, 'Value': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00970>, 'LinkedValue': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00988>}, 4: {'AxisCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00790>, 'Flags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d009a0>, 'ValueNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d009b8>, 'AxisValueRecord': Struct of <class 'fontTools.ttLib.tables.otTables.AxisValueRecord'>}}
class fontTools.ttLib.tables.otTables.AxisValueArray
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.AxisValue'>]
convertersByName = {'AxisValue': Struct of <class 'fontTools.ttLib.tables.otTables.AxisValue'>}
class fontTools.ttLib.tables.otTables.AxisValueRecord
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.Fixed object>]
convertersByName = {'AxisIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d009e8>, 'Value': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d00a00>}
class fontTools.ttLib.tables.otTables.BASE
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.Axis'>, Struct of <class 'fontTools.ttLib.tables.otTables.Axis'>]
convertersByName = {'HorizAxis': Struct of <class 'fontTools.ttLib.tables.otTables.Axis'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d000e8>, 'VertAxis': Struct of <class 'fontTools.ttLib.tables.otTables.Axis'>}
mergeMap = {'*': <function mergeObjects at 0xf4174778>, 'Version': <built-in function max>}
fontTools.ttLib.tables.otTables.BacktrackClassDef

alias of fontTools.ttLib.tables.otTables.ClassDef

fontTools.ttLib.tables.otTables.BacktrackCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

fontTools.ttLib.tables.otTables.BaseAnchor

alias of fontTools.ttLib.tables.otTables.Anchor

class fontTools.ttLib.tables.otTables.BaseArray
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseRecord'>]
convertersByName = {'BaseCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b056e8>, 'BaseRecord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseRecord'>}
class fontTools.ttLib.tables.otTables.BaseCoord
converters = {1: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4d00370>], 2: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4d00388>, <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d003a0>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d003b8>], 3: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4d003d0>, Struct of <class 'fontTools.ttLib.tables.otTables.Device'>]}
convertersByName = {1: {'Coordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d00370>}, 2: {'Coordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d00388>, 'ReferenceGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d003a0>, 'BaseCoordPoint': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d003b8>}, 3: {'Coordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d003d0>, 'DeviceTable': Struct of <class 'fontTools.ttLib.tables.otTables.Device'>}}
fontTools.ttLib.tables.otTables.BaseCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.BaseLangSysRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.MinMax'>]
convertersByName = {'BaseLangSysTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d00250>, 'MinMax': Struct of <class 'fontTools.ttLib.tables.otTables.MinMax'>}
class fontTools.ttLib.tables.otTables.BaseRecord
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>]
convertersByName = {'BaseAnchor': Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>}
class fontTools.ttLib.tables.otTables.BaseScript
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.BaseValues'>, Struct of <class 'fontTools.ttLib.tables.otTables.MinMax'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseLangSysRecord'>]
convertersByName = {'BaseLangSysCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00190>, 'BaseLangSysRecord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseLangSysRecord'>, 'BaseValues': Struct of <class 'fontTools.ttLib.tables.otTables.BaseValues'>, 'DefaultMinMax': Struct of <class 'fontTools.ttLib.tables.otTables.MinMax'>}
class fontTools.ttLib.tables.otTables.BaseScriptList
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseScriptRecord'>]
convertersByName = {'BaseScriptCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00160>, 'BaseScriptRecord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseScriptRecord'>}
mergeMap = {'BaseScriptCount': <function <lambda> at 0xf406b2f8>, 'BaseScriptRecord': <function <lambda> at 0xf406b2b0>}
class fontTools.ttLib.tables.otTables.BaseScriptRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseScript'>]
convertersByName = {'BaseScript': Struct of <class 'fontTools.ttLib.tables.otTables.BaseScript'>, 'BaseScriptTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d001c0>}
class fontTools.ttLib.tables.otTables.BaseTagList
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.Tag object>]
convertersByName = {'BaseTagCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d000b8>, 'BaselineTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d00178>}
mergeMap = {'BaseTagCount': <built-in function sum>, 'BaselineTag': <function sumLists at 0xf4174898>}
class fontTools.ttLib.tables.otTables.BaseValues
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>]
convertersByName = {'BaseCoord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>, 'BaseCoordCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00220>, 'DefaultIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00280>}
class fontTools.ttLib.tables.otTables.Baseline
converters = {0: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a00>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a18>], 1: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a30>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a48>, <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09a60>], 2: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a90>, <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d09aa8>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09ac0>], 3: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09ad8>, <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d09af0>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09b08>, <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09b20>]}
convertersByName = {0: {'DefaultBaseline': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a00>, 'Delta': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a18>}, 1: {'DefaultBaseline': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a30>, 'Delta': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a48>, 'BaselineValues': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09a60>}, 2: {'DefaultBaseline': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09a90>, 'StandardGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d09aa8>, 'ControlPoint': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09ac0>}, 3: {'DefaultBaseline': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09ad8>, 'StandardGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d09af0>, 'ControlPoint': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09b08>, 'BaselineValues': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09b20>}}
fontTools.ttLib.tables.otTables.BottomLeftMathKern

alias of fontTools.ttLib.tables.otTables.MathKern

fontTools.ttLib.tables.otTables.BottomRightMathKern

alias of fontTools.ttLib.tables.otTables.MathKern

class fontTools.ttLib.tables.otTables.CIDGlyphMapping
converters = {0: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09b68>, <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d09b50>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09b98>, <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09bb0>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09bc8>, <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09be0>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09bf8>, <fontTools.ttLib.tables.otConverters.CIDGlyphMap object at 0xf4d09c10>]}
convertersByName = {0: {'DataFormat': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09b68>, 'StructLength': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d09b50>, 'Registry': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09b98>, 'RegistryName': <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09bb0>, 'Order': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09bc8>, 'OrderName': <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09be0>, 'SupplementVersion': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09bf8>, 'Mapping': <fontTools.ttLib.tables.otConverters.CIDGlyphMap object at 0xf4d09c10>}}
class fontTools.ttLib.tables.otTables.CaretValue
converters = {1: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4d00040>], 2: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00058>], 3: [<fontTools.ttLib.tables.otConverters.Short object at 0xf4d00070>, Struct of <class 'fontTools.ttLib.tables.otTables.Device'>]}
convertersByName = {1: {'Coordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d00040>}, 2: {'CaretValuePoint': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00058>}, 3: {'Coordinate': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d00070>, 'DeviceTable': Struct of <class 'fontTools.ttLib.tables.otTables.Device'>}}
class fontTools.ttLib.tables.otTables.ChainContextPos
LookupType = 8
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05bc8>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosRuleSet'>], 2: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05d48>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosClassSet'>], 3: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05e98>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05ec8>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05ef8>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05f28>, Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ChainPosRuleSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05bc8>, 'ChainPosRuleSet': Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosRuleSet'>}, 2: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'BacktrackClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'InputClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'LookAheadClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'ChainPosClassSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05d48>, 'ChainPosClassSet': Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosClassSet'>}, 3: {'BacktrackGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05e98>, 'BacktrackCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'InputGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05ec8>, 'InputCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'LookAheadGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05ef8>, 'LookAheadCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'PosCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05f28>, 'PosLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.ChainContextSubst
LookupType = 6
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb7d8>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubRuleSet'>], 2: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb958>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubClassSet'>], 3: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbaa8>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbad8>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbb08>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbb38>, Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ChainSubRuleSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb7d8>, 'ChainSubRuleSet': Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubRuleSet'>}, 2: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'BacktrackClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'InputClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'LookAheadClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'ChainSubClassSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb958>, 'ChainSubClassSet': Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubClassSet'>}, 3: {'BacktrackGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbaa8>, 'BacktrackCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'InputGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbad8>, 'InputCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'LookAheadGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbb08>, 'LookAheadCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'SubstCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbb38>, 'SubstLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>}}
mapLookups(lookupMap)
may_have_non_1to1()
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.ChainPosClassRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>]
convertersByName = {'Backtrack': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05e20>, 'BacktrackGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05dc0>, 'Input': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05e50>, 'InputGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05e08>, 'LookAhead': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05e80>, 'LookAheadGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05e38>, 'PosCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05e68>, 'PosLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>}
class fontTools.ttLib.tables.otTables.ChainPosClassSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosClassRule'>]
convertersByName = {'ChainPosClassRule': Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosClassRule'>, 'ChainPosClassRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05d18>}
class fontTools.ttLib.tables.otTables.ChainPosRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>]
convertersByName = {'Backtrack': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05ca0>, 'BacktrackGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05c58>, 'Input': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05cd0>, 'InputGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05c88>, 'LookAhead': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05d00>, 'LookAheadGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05cb8>, 'PosCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05ce8>, 'PosLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>}
class fontTools.ttLib.tables.otTables.ChainPosRuleSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosRule'>]
convertersByName = {'ChainPosRule': Struct of <class 'fontTools.ttLib.tables.otTables.ChainPosRule'>, 'ChainPosRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05c28>}
class fontTools.ttLib.tables.otTables.ChainSubClassRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>]
convertersByName = {'Backtrack': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfba30>, 'BacktrackGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb9d0>, 'Input': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfba60>, 'InputGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfba18>, 'LookAhead': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfba90>, 'LookAheadGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfba48>, 'SubstCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfba78>, 'SubstLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>}
class fontTools.ttLib.tables.otTables.ChainSubClassSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubClassRule'>]
convertersByName = {'ChainSubClassRule': Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubClassRule'>, 'ChainSubClassRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb928>}
class fontTools.ttLib.tables.otTables.ChainSubRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>]
convertersByName = {'Backtrack': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb8b0>, 'BacktrackGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb868>, 'Input': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb8e0>, 'InputGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb898>, 'LookAhead': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb910>, 'LookAheadGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb8c8>, 'SubstCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb8f8>, 'SubstLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>}
class fontTools.ttLib.tables.otTables.ChainSubRuleSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubRule'>]
convertersByName = {'ChainSubRule': Struct of <class 'fontTools.ttLib.tables.otTables.ChainSubRule'>, 'ChainSubRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb838>}
class fontTools.ttLib.tables.otTables.Class1Record
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Class2Record'>]
convertersByName = {'Class2Record': Struct of <class 'fontTools.ttLib.tables.otTables.Class2Record'>}
class fontTools.ttLib.tables.otTables.Class2Record
converters = [<fontTools.ttLib.tables.otConverters.ValueRecord object>, <fontTools.ttLib.tables.otConverters.ValueRecord object>]
convertersByName = {'Value1': <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b056a0>, 'Value2': <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b056b8>}
class fontTools.ttLib.tables.otTables.ClassDef[source]
converters = {1: [<fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05298>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05220>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b052c8>], 2: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b052b0>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassRangeRecord'>]}
convertersByName = {1: {'StartGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05298>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05220>, 'ClassValueArray': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b052c8>}, 2: {'ClassRangeCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b052b0>, 'ClassRangeRecord': Struct of <class 'fontTools.ttLib.tables.otTables.ClassRangeRecord'>}}
fromXML(name, attrs, content, font)[source]
intersect(glyphs)

Returns ascending list of matching class values.

intersect_class(glyphs, klass)

Returns set of glyphs matching class.

mergeMap = {'Format': <built-in function min>, 'classDefs': <function sumDicts at 0xf4174808>}
populateDefaults(propagator=None)[source]
postRead(rawTable, font)[source]
preWrite(font)[source]
remap(class_map)

Remaps classes.

subset(glyphs, remap=False)

Returns ascending list of remaining classes.

toXML2(xmlWriter, font)[source]
fontTools.ttLib.tables.otTables.ClassDef1

alias of fontTools.ttLib.tables.otTables.ClassDef

fontTools.ttLib.tables.otTables.ClassDef2

alias of fontTools.ttLib.tables.otTables.ClassDef

class fontTools.ttLib.tables.otTables.ClassRangeRecord
converters = [<fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'Class': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05340>, 'End': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05328>, 'Start': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05310>}
class fontTools.ttLib.tables.otTables.ComponentRecord
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>]
convertersByName = {'LigatureAnchor': Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>}
class fontTools.ttLib.tables.otTables.ConditionSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.ConditionTable'>]
convertersByName = {'ConditionCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00a30>, 'ConditionTable': Struct of <class 'fontTools.ttLib.tables.otTables.ConditionTable'>}
class fontTools.ttLib.tables.otTables.ConditionTable
converters = {1: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00ac0>, <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d00ad8>, <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d00af0>]}
convertersByName = {1: {'AxisIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00ac0>, 'FilterRangeMinValue': <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d00ad8>, 'FilterRangeMaxValue': <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d00af0>}}
class fontTools.ttLib.tables.otTables.ContextPos
LookupType = 7
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05940>, Struct of <class 'fontTools.ttLib.tables.otTables.PosRuleSet'>], 2: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05a78>, Struct of <class 'fontTools.ttLib.tables.otTables.PosClassSet'>], 3: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05b68>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05bb0>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'PosRuleSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05940>, 'PosRuleSet': Struct of <class 'fontTools.ttLib.tables.otTables.PosRuleSet'>}, 2: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'PosClassSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05a78>, 'PosClassSet': Struct of <class 'fontTools.ttLib.tables.otTables.PosClassSet'>}, 3: {'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05b68>, 'PosCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05bb0>, 'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'PosLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.ContextSubst
LookupType = 5
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb598>, Struct of <class 'fontTools.ttLib.tables.otTables.SubRuleSet'>], 2: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb688>, Struct of <class 'fontTools.ttLib.tables.otTables.SubClassSet'>], 3: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb778>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb7c0>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'SubRuleSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb598>, 'SubRuleSet': Struct of <class 'fontTools.ttLib.tables.otTables.SubRuleSet'>}, 2: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'SubClassSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb688>, 'SubClassSet': Struct of <class 'fontTools.ttLib.tables.otTables.SubClassSet'>}, 3: {'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb778>, 'SubstCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb7c0>, 'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'SubstLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>}}
mapLookups(lookupMap)
may_have_non_1to1()
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.ContextualMorph
LookupType = 1
converters = [<fontTools.ttLib.tables.otConverters.STXHeader object>]
convertersByName = {'StateTable': <fontTools.ttLib.tables.otConverters.STXHeader object at 0xf4d16718>}
class fontTools.ttLib.tables.otTables.ContextualMorphAction[source]
actionHeaderSize = 0
compile(writer, font, actionIndex)[source]
decompile(reader, font, actionReader)[source]
fromXML(name, attrs, content, font)[source]
staticSize = 8
toXML(xmlWriter, font, attrs, name)[source]
class fontTools.ttLib.tables.otTables.Coverage[source]
converters = {1: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05130>, <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05208>], 2: [<fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b051f0>, Struct of <class 'fontTools.ttLib.tables.otTables.RangeRecord'>]}
convertersByName = {1: {'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05130>, 'GlyphArray': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05208>}, 2: {'RangeCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b051f0>, 'RangeRecord': Struct of <class 'fontTools.ttLib.tables.otTables.RangeRecord'>}}
fromXML(name, attrs, content, font)[source]
intersect(glyphs)

Returns ascending list of matching coverage values.

intersect_glyphs(glyphs)

Returns set of intersecting glyphs.

mergeMap = {'Format': <built-in function min>, 'glyphs': <function sumLists at 0xf4174898>}
populateDefaults(propagator=None)[source]
postRead(rawTable, font)[source]
preWrite(font)[source]
remap(coverage_map)

Remaps coverage.

subset(glyphs)

Returns ascending list of remaining coverage values.

toXML2(xmlWriter, font)[source]
class fontTools.ttLib.tables.otTables.CursivePos
LookupType = 3
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05658>, Struct of <class 'fontTools.ttLib.tables.otTables.EntryExitRecord'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'EntryExitCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05658>, 'EntryExitRecord': Struct of <class 'fontTools.ttLib.tables.otTables.EntryExitRecord'>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
fontTools.ttLib.tables.otTables.DefJstfLangSys

alias of fontTools.ttLib.tables.otTables.JstfLangSys

fontTools.ttLib.tables.otTables.DefaultLangSys

alias of fontTools.ttLib.tables.otTables.LangSys

fontTools.ttLib.tables.otTables.DefaultMinMax

alias of fontTools.ttLib.tables.otTables.MinMax

class fontTools.ttLib.tables.otTables.Device
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.DeltaValue object>]
convertersByName = {'DeltaFormat': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05388>, 'DeltaValue': <fontTools.ttLib.tables.otConverters.DeltaValue object at 0xf4b053a0>, 'EndSize': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05370>, 'StartSize': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05358>}
fontTools.ttLib.tables.otTables.DeviceTable

alias of fontTools.ttLib.tables.otTables.Device

fontTools.ttLib.tables.otTables.EntryAnchor

alias of fontTools.ttLib.tables.otTables.Anchor

class fontTools.ttLib.tables.otTables.EntryExitRecord
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>, Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>]
convertersByName = {'EntryAnchor': Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>, 'ExitAnchor': Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>}
fontTools.ttLib.tables.otTables.ExitAnchor

alias of fontTools.ttLib.tables.otTables.Anchor

fontTools.ttLib.tables.otTables.ExtendedShapeCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.ExtenderGlyph
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>]
convertersByName = {'ExtenderGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d00520>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d004a8>}
fontTools.ttLib.tables.otTables.ExtensionDisableGPOS

alias of fontTools.ttLib.tables.otTables.JstfGPOSModList

fontTools.ttLib.tables.otTables.ExtensionDisableGSUB

alias of fontTools.ttLib.tables.otTables.JstfGSUBModList

fontTools.ttLib.tables.otTables.ExtensionEnableGPOS

alias of fontTools.ttLib.tables.otTables.JstfGPOSModList

fontTools.ttLib.tables.otTables.ExtensionEnableGSUB

alias of fontTools.ttLib.tables.otTables.JstfGSUBModList

fontTools.ttLib.tables.otTables.ExtensionJstfMax

alias of fontTools.ttLib.tables.otTables.JstfMax

class fontTools.ttLib.tables.otTables.ExtensionPos
LookupType = 9
collect_lookups()
converters = {1: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05f88>, Struct of None]}
convertersByName = {1: {'ExtensionLookupType': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05f88>, 'SingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.SingleSubst'>, 'MultipleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.MultipleSubst'>, 'AlternateSubst': Struct of <class 'fontTools.ttLib.tables.otTables.AlternateSubst'>, 'LigatureSubst': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureSubst'>, 'ContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ContextSubst'>, 'ChainContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextSubst'>, 'ExtensionSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionSubst'>, 'ReverseChainSingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ReverseChainSingleSubst'>, 'SinglePos': Struct of <class 'fontTools.ttLib.tables.otTables.SinglePos'>, 'PairPos': Struct of <class 'fontTools.ttLib.tables.otTables.PairPos'>, 'CursivePos': Struct of <class 'fontTools.ttLib.tables.otTables.CursivePos'>, 'MarkBasePos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkBasePos'>, 'MarkLigPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkLigPos'>, 'MarkMarkPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkMarkPos'>, 'ContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ContextPos'>, 'ChainContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextPos'>, 'ExtensionPos': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionPos'>, 'NoncontextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.NoncontextualMorph'>, 'RearrangementMorph': Struct of <class 'fontTools.ttLib.tables.otTables.RearrangementMorph'>, 'ContextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.ContextualMorph'>, 'LigatureMorph': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureMorph'>, 'InsertionMorph': Struct of <class 'fontTools.ttLib.tables.otTables.InsertionMorph'>, 'ExtSubTable': Struct of None}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.ExtensionSubst
LookupType = 7
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfbb98>, Struct of None]}
convertersByName = {1: {'ExtensionLookupType': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfbb98>, 'SingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.SingleSubst'>, 'MultipleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.MultipleSubst'>, 'AlternateSubst': Struct of <class 'fontTools.ttLib.tables.otTables.AlternateSubst'>, 'LigatureSubst': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureSubst'>, 'ContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ContextSubst'>, 'ChainContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextSubst'>, 'ExtensionSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionSubst'>, 'ReverseChainSingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ReverseChainSingleSubst'>, 'SinglePos': Struct of <class 'fontTools.ttLib.tables.otTables.SinglePos'>, 'PairPos': Struct of <class 'fontTools.ttLib.tables.otTables.PairPos'>, 'CursivePos': Struct of <class 'fontTools.ttLib.tables.otTables.CursivePos'>, 'MarkBasePos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkBasePos'>, 'MarkLigPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkLigPos'>, 'MarkMarkPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkMarkPos'>, 'ContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ContextPos'>, 'ChainContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextPos'>, 'ExtensionPos': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionPos'>, 'NoncontextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.NoncontextualMorph'>, 'RearrangementMorph': Struct of <class 'fontTools.ttLib.tables.otTables.RearrangementMorph'>, 'ContextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.ContextualMorph'>, 'LigatureMorph': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureMorph'>, 'InsertionMorph': Struct of <class 'fontTools.ttLib.tables.otTables.InsertionMorph'>, 'ExtSubTable': Struct of None}}
mapLookups(lookupMap)
may_have_non_1to1()
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.FeatMinMaxRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>]
convertersByName = {'FeatureTableTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d00328>, 'MaxCoord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>, 'MinCoord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>}
class fontTools.ttLib.tables.otTables.Feature
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.FeatureParams'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'FeatureParams': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureParams'>, 'FeatureParamsCharacterVariants': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureParamsCharacterVariants'>, 'FeatureParamsSize': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureParamsSize'>, 'FeatureParamsStylisticSet': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureParamsStylisticSet'>, 'LookupCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4ce4aa8>, 'LookupListIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce4b80>}
mapLookups(lookupMap)
subset_lookups(lookup_indices)

“Returns True if feature is non-empty afterwards.

class fontTools.ttLib.tables.otTables.FeatureList
collect_lookups(feature_indices)
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureRecord'>]
convertersByName = {'FeatureCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4ce4598>, 'FeatureRecord': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureRecord'>}
mapLookups(lookupMap)
mergeMap = {'FeatureCount': <built-in function sum>, 'FeatureRecord': <function <lambda> at 0xf406b268>}
subset_features(feature_indices)
subset_lookups(lookup_indices)

Returns the indices of nonempty features.

class fontTools.ttLib.tables.otTables.FeatureName
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Settings'>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.NameID object>]
convertersByName = {'FeatureFlags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09d00>, 'FeatureNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d09d18>, 'FeatureType': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09cb8>, 'Settings': Struct of <class 'fontTools.ttLib.tables.otTables.Settings'>, 'SettingsCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09ca0>}
class fontTools.ttLib.tables.otTables.FeatureNames
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ULong object>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureName'>]
convertersByName = {'FeatureName': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureName'>, 'FeatureNameCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09c40>, 'Reserved1': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09c70>, 'Reserved2': <fontTools.ttLib.tables.otConverters.ULong object at 0xf4d09c88>}
class fontTools.ttLib.tables.otTables.FeatureParams[source]
compile(writer, font)[source]
converters = []
convertersByName = {}
toXML(xmlWriter, font, attrs=None, name=None)[source]
class fontTools.ttLib.tables.otTables.FeatureParamsCharacterVariants[source]
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.NameID object>, <fontTools.ttLib.tables.otConverters.NameID object>, <fontTools.ttLib.tables.otConverters.NameID object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.NameID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UInt24 object>]
convertersByName = {'CharCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4ce90d0>, 'Character': <fontTools.ttLib.tables.otConverters.UInt24 object at 0xf4ce9ef8>, 'FeatUILabelNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4ce9898>, 'FeatUITooltipTextNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4ce9e80>, 'FirstParamUILabelNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4ce9ec8>, 'Format': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce9610>, 'NumNamedParameters': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce9eb0>, 'SampleTextNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4ce9e98>}
class fontTools.ttLib.tables.otTables.FeatureParamsSize[source]
converters = [<fontTools.ttLib.tables.otConverters.DeciPoints object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.NameID object>, <fontTools.ttLib.tables.otConverters.DeciPoints object>, <fontTools.ttLib.tables.otConverters.DeciPoints object>]
convertersByName = {'DesignSize': <fontTools.ttLib.tables.otConverters.DeciPoints object at 0xf4ce4bf8>, 'RangeEnd': <fontTools.ttLib.tables.otConverters.DeciPoints object at 0xf4ce9148>, 'RangeStart': <fontTools.ttLib.tables.otConverters.DeciPoints object at 0xf4ce4b08>, 'SubfamilyID': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce4e50>, 'SubfamilyNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4ce4fe8>}
class fontTools.ttLib.tables.otTables.FeatureParamsStylisticSet[source]
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.NameID object>]
convertersByName = {'UINameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4ce91c0>, 'Version': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce9190>}
class fontTools.ttLib.tables.otTables.FeatureRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.Feature'>]
convertersByName = {'Feature': Struct of <class 'fontTools.ttLib.tables.otTables.Feature'>, 'FeatureTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4ce4850>}
class fontTools.ttLib.tables.otTables.FeatureTableSubstitution
converters = [<fontTools.ttLib.tables.otConverters.Version object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureTableSubstitutionRecord'>]
convertersByName = {'SubstitutionCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00a90>, 'SubstitutionRecord': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureTableSubstitutionRecord'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d00b08>}
subset_features(feature_indices)
subset_lookups(lookup_indices)

Returns the indices of nonempty features.

class fontTools.ttLib.tables.otTables.FeatureTableSubstitutionRecord
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Feature'>]
convertersByName = {'Feature': Struct of <class 'fontTools.ttLib.tables.otTables.Feature'>, 'FeatureIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00b50>}
class fontTools.ttLib.tables.otTables.FeatureVariationRecord
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.ConditionSet'>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureTableSubstitution'>]
convertersByName = {'ConditionSet': Struct of <class 'fontTools.ttLib.tables.otTables.ConditionSet'>, 'FeatureTableSubstitution': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureTableSubstitution'>}
class fontTools.ttLib.tables.otTables.FeatureVariations
collect_lookups(feature_indices)
converters = [<fontTools.ttLib.tables.otConverters.Version object>, <fontTools.ttLib.tables.otConverters.ComputedULong object>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureVariationRecord'>]
convertersByName = {'FeatureVariationCount': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d00880>, 'FeatureVariationRecord': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureVariationRecord'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d00a18>}
subset_features(feature_indices)
subset_lookups(lookup_indices)

Returns the indices of nonempty features.

class fontTools.ttLib.tables.otTables.GDEF
collect_device_varidxes(varidxes)
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.AttachList'>, Struct of <class 'fontTools.ttLib.tables.otTables.LigCaretList'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.MarkGlyphSetsDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>]
convertersByName = {'AttachList': Struct of <class 'fontTools.ttLib.tables.otTables.AttachList'>, 'GlyphClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'LigCaretList': Struct of <class 'fontTools.ttLib.tables.otTables.LigCaretList'>, 'MarkAttachClassDef': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'MarkGlyphSetsDef': Struct of <class 'fontTools.ttLib.tables.otTables.MarkGlyphSetsDef'>, 'VarStore': Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4cfbe80>}
mergeMap = {'*': <function mergeObjects at 0xf4174778>, 'Version': <built-in function max>}
remap_device_varidxes(varidxes_map)
class fontTools.ttLib.tables.otTables.GPOS
DontShare = True
collect_device_varidxes(varidxes)
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.ScriptList'>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureList'>, Struct of <class 'fontTools.ttLib.tables.otTables.LookupList'>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureVariations'>]
convertersByName = {'FeatureList': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureList'>, 'FeatureVariations': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureVariations'>, 'LookupList': Struct of <class 'fontTools.ttLib.tables.otTables.LookupList'>, 'ScriptList': Struct of <class 'fontTools.ttLib.tables.otTables.ScriptList'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4b053b8>}
mergeMap = {'*': <function mergeObjects at 0xf4174778>, 'Version': <built-in function max>}
remap_device_varidxes(varidxes_map)
class fontTools.ttLib.tables.otTables.GSUB
DontShare = True
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.ScriptList'>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureList'>, Struct of <class 'fontTools.ttLib.tables.otTables.LookupList'>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureVariations'>]
convertersByName = {'FeatureList': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureList'>, 'FeatureVariations': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureVariations'>, 'LookupList': Struct of <class 'fontTools.ttLib.tables.otTables.LookupList'>, 'ScriptList': Struct of <class 'fontTools.ttLib.tables.otTables.ScriptList'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4cfb328>}
mergeMap = {'*': <function mergeObjects at 0xf4174778>, 'Version': <built-in function max>}
class fontTools.ttLib.tables.otTables.GlyphAssembly
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.GlyphPartRecord'>]
convertersByName = {'ItalicsCorrection': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'PartCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09820>, 'PartRecords': Struct of <class 'fontTools.ttLib.tables.otTables.GlyphPartRecord'>}
class fontTools.ttLib.tables.otTables.GlyphCIDMapping
converters = {0: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09d90>, <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d09d78>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09dc0>, <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09dd8>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09df0>, <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09e08>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09e20>, <fontTools.ttLib.tables.otConverters.GlyphCIDMap object at 0xf4d09e38>]}
convertersByName = {0: {'DataFormat': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09d90>, 'StructLength': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d09d78>, 'Registry': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09dc0>, 'RegistryName': <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09dd8>, 'Order': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09df0>, 'OrderName': <fontTools.ttLib.tables.otConverters.Char64 object at 0xf4d09e08>, 'SupplementVersion': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09e20>, 'Mapping': <fontTools.ttLib.tables.otConverters.GlyphCIDMap object at 0xf4d09e38>}}
fontTools.ttLib.tables.otTables.GlyphClassDef

alias of fontTools.ttLib.tables.otTables.ClassDef

class fontTools.ttLib.tables.otTables.GlyphPartRecord
converters = [<fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'EndConnectorLength': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09898>, 'FullAdvance': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d098b0>, 'PartFlags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d098c8>, 'StartConnectorLength': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09880>, 'glyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d09868>}
class fontTools.ttLib.tables.otTables.GlyphProperties
converters = {0: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d168e0>], 1: [<fontTools.ttLib.tables.otConverters.UShort object at 0xf4d168f8>, <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d16910>]}
convertersByName = {0: {'DefaultProperties': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d168e0>}, 1: {'DefaultProperties': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d168f8>, 'Properties': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d16910>}}
class fontTools.ttLib.tables.otTables.HVAR
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>]
convertersByName = {'AdvWidthMap': Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, 'LsbMap': Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, 'RsbMap': Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, 'VarStore': Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d00d48>}
fontTools.ttLib.tables.otTables.HorizAxis

alias of fontTools.ttLib.tables.otTables.Axis

fontTools.ttLib.tables.otTables.HorizGlyphConstruction

alias of fontTools.ttLib.tables.otTables.MathGlyphConstruction

fontTools.ttLib.tables.otTables.HorizGlyphCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

fontTools.ttLib.tables.otTables.InputClassDef

alias of fontTools.ttLib.tables.otTables.ClassDef

fontTools.ttLib.tables.otTables.InputCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.InsertionMorph
LookupType = 5
converters = [<fontTools.ttLib.tables.otConverters.STXHeader object>]
convertersByName = {'StateTable': <fontTools.ttLib.tables.otConverters.STXHeader object at 0xf4d16820>}
class fontTools.ttLib.tables.otTables.InsertionMorphAction[source]
actionHeaderSize = 4
compile(writer, font, actionIndex)[source]
static compileActions(font, states)[source]
decompile(reader, font, actionReader)[source]
fromXML(name, attrs, content, font)[source]
staticSize = 8
toXML(xmlWriter, font, attrs, name)[source]
class fontTools.ttLib.tables.otTables.JSTF
converters = [<fontTools.ttLib.tables.otConverters.Version object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfScriptRecord'>]
convertersByName = {'JstfScriptCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d002f8>, 'JstfScriptRecord': Struct of <class 'fontTools.ttLib.tables.otTables.JstfScriptRecord'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d00400>}
mergeMap = {'*': <function mergeObjects at 0xf4174778>, 'Version': <built-in function max>}
class fontTools.ttLib.tables.otTables.JstfGPOSModList
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'GPOSLookupIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d006a0>, 'LookupCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00658>}
class fontTools.ttLib.tables.otTables.JstfGSUBModList
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'GSUBLookupIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00670>, 'LookupCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00538>}
class fontTools.ttLib.tables.otTables.JstfLangSys
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfPriority'>]
convertersByName = {'JstfPriority': Struct of <class 'fontTools.ttLib.tables.otTables.JstfPriority'>, 'JstfPriorityCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00508>}
class fontTools.ttLib.tables.otTables.JstfLangSysRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfLangSys'>]
convertersByName = {'JstfLangSys': Struct of <class 'fontTools.ttLib.tables.otTables.JstfLangSys'>, 'JstfLangSysTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d004d8>}
class fontTools.ttLib.tables.otTables.JstfMax
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Lookup'>]
convertersByName = {'Lookup': Struct of <class 'fontTools.ttLib.tables.otTables.Lookup'>, 'LookupCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00688>}
class fontTools.ttLib.tables.otTables.JstfPriority
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfMax'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfMax'>]
convertersByName = {'ExtensionDisableGPOS': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, 'ExtensionDisableGSUB': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, 'ExtensionEnableGPOS': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, 'ExtensionEnableGSUB': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, 'ExtensionJstfMax': Struct of <class 'fontTools.ttLib.tables.otTables.JstfMax'>, 'ShrinkageDisableGPOS': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, 'ShrinkageDisableGSUB': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, 'ShrinkageEnableGPOS': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGPOSModList'>, 'ShrinkageEnableGSUB': Struct of <class 'fontTools.ttLib.tables.otTables.JstfGSUBModList'>, 'ShrinkageJstfMax': Struct of <class 'fontTools.ttLib.tables.otTables.JstfMax'>}
class fontTools.ttLib.tables.otTables.JstfScript
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.ExtenderGlyph'>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfLangSys'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfLangSysRecord'>]
convertersByName = {'DefJstfLangSys': Struct of <class 'fontTools.ttLib.tables.otTables.JstfLangSys'>, 'ExtenderGlyph': Struct of <class 'fontTools.ttLib.tables.otTables.ExtenderGlyph'>, 'JstfLangSysCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00418>, 'JstfLangSysRecord': Struct of <class 'fontTools.ttLib.tables.otTables.JstfLangSysRecord'>}
class fontTools.ttLib.tables.otTables.JstfScriptRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.JstfScript'>]
convertersByName = {'JstfScript': Struct of <class 'fontTools.ttLib.tables.otTables.JstfScript'>, 'JstfScriptTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d00448>}
class fontTools.ttLib.tables.otTables.LangSys
collect_features()
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.LookupOrder'>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'FeatureCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4ce41a8>, 'FeatureIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce4670>, 'LookupOrder': Struct of <class 'fontTools.ttLib.tables.otTables.LookupOrder'>, 'ReqFeatureIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce44c0>}
mapFeatures(featureMap)
subset_features(feature_indices)
class fontTools.ttLib.tables.otTables.LangSysRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.LangSys'>]
convertersByName = {'LangSys': Struct of <class 'fontTools.ttLib.tables.otTables.LangSys'>, 'LangSysTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4ce42e0>}
class fontTools.ttLib.tables.otTables.LigAction[source]
class fontTools.ttLib.tables.otTables.LigCaretDistances
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.Short object>]
convertersByName = {'DivisionPoint': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d09ef8>, 'DivsionPointCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09eb0>}
class fontTools.ttLib.tables.otTables.LigCaretList
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.LigGlyph'>]
convertersByName = {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'LigGlyph': Struct of <class 'fontTools.ttLib.tables.otTables.LigGlyph'>, 'LigGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbf70>}
mergeMap = {'Coverage': <function mergeObjects at 0xf4174778>, 'LigGlyph': <function sumLists at 0xf4174898>, 'LigGlyphCount': <built-in function sum>}
class fontTools.ttLib.tables.otTables.LigCaretPoints
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.Short object>]
convertersByName = {'DivisionPoint': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d09f28>, 'DivsionPointCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09ee0>}
class fontTools.ttLib.tables.otTables.LigGlyph
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.CaretValue'>]
convertersByName = {'CaretCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbfb8>, 'CaretValue': Struct of <class 'fontTools.ttLib.tables.otTables.CaretValue'>}
class fontTools.ttLib.tables.otTables.Ligature
converters = [<fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>]
convertersByName = {'CompCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb550>, 'Component': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb5b0>, 'LigGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb580>}
fontTools.ttLib.tables.otTables.LigatureAnchor

alias of fontTools.ttLib.tables.otTables.Anchor

class fontTools.ttLib.tables.otTables.LigatureArray
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.LigatureAttach'>]
convertersByName = {'LigatureAttach': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureAttach'>, 'LigatureCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05790>}
class fontTools.ttLib.tables.otTables.LigatureAttach
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.ComponentRecord'>]
convertersByName = {'ComponentCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05850>, 'ComponentRecord': Struct of <class 'fontTools.ttLib.tables.otTables.ComponentRecord'>}
class fontTools.ttLib.tables.otTables.LigatureCarets
converters = {0: [<fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09da8>], 1: [<fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09e80>]}
convertersByName = {0: {'Carets': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09da8>}, 1: {'Carets': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d09e80>}}
fontTools.ttLib.tables.otTables.LigatureCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.LigatureMorph
LookupType = 2
converters = [<fontTools.ttLib.tables.otConverters.STXHeader object>]
convertersByName = {'StateTable': <fontTools.ttLib.tables.otConverters.STXHeader object at 0xf4d16760>}
class fontTools.ttLib.tables.otTables.LigatureMorphAction[source]
actionHeaderSize = 12
compile(writer, font, actionIndex)[source]
static compileActions(font, states)[source]
compileLigActions()[source]
decompile(reader, font, actionReader)[source]
fromXML(name, attrs, content, font)[source]
staticSize = 6
toXML(xmlWriter, font, attrs, name)[source]
class fontTools.ttLib.tables.otTables.LigatureSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Ligature'>]
convertersByName = {'Ligature': Struct of <class 'fontTools.ttLib.tables.otTables.Ligature'>, 'LigatureCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb520>}
class fontTools.ttLib.tables.otTables.LigatureSubst[source]
LookupType = 4
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb4d8>, Struct of <class 'fontTools.ttLib.tables.otTables.LigatureSet'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'LigSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb4d8>, 'LigatureSet': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureSet'>}}
fromXML(name, attrs, content, font)[source]
mapLookups(lookupMap)
may_have_non_1to1()
populateDefaults(propagator=None)[source]
postRead(rawTable, font)[source]
preWrite(font)[source]
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
toXML2(xmlWriter, font)[source]
class fontTools.ttLib.tables.otTables.LocationRecord
converters = [<fontTools.ttLib.tables.otConverters.F2Dot14 object>]
convertersByName = {'Axis': <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d16b50>}
fontTools.ttLib.tables.otTables.LookAheadClassDef

alias of fontTools.ttLib.tables.otTables.ClassDef

fontTools.ttLib.tables.otTables.LookAheadCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.Lookup
closure_glyphs(s, cur_glyphs=None)
collect_lookups()
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of None, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'AlternateSubst': Struct of <class 'fontTools.ttLib.tables.otTables.AlternateSubst'>, 'ChainContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextPos'>, 'ChainContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextSubst'>, 'ContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ContextPos'>, 'ContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ContextSubst'>, 'ContextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.ContextualMorph'>, 'CursivePos': Struct of <class 'fontTools.ttLib.tables.otTables.CursivePos'>, 'ExtensionPos': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionPos'>, 'ExtensionSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionSubst'>, 'InsertionMorph': Struct of <class 'fontTools.ttLib.tables.otTables.InsertionMorph'>, 'LigatureMorph': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureMorph'>, 'LigatureSubst': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureSubst'>, 'LookupFlag': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce9f58>, 'LookupType': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4ce9f40>, 'MarkBasePos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkBasePos'>, 'MarkFilteringSet': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b051d8>, 'MarkLigPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkLigPos'>, 'MarkMarkPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkMarkPos'>, 'MultipleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.MultipleSubst'>, 'NoncontextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.NoncontextualMorph'>, 'PairPos': Struct of <class 'fontTools.ttLib.tables.otTables.PairPos'>, 'RearrangementMorph': Struct of <class 'fontTools.ttLib.tables.otTables.RearrangementMorph'>, 'ReverseChainSingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ReverseChainSingleSubst'>, 'SinglePos': Struct of <class 'fontTools.ttLib.tables.otTables.SinglePos'>, 'SingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.SingleSubst'>, 'SubTable': Struct of None, 'SubTableCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4ce9f10>}
mapLookups(lookupMap)
may_have_non_1to1()
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.LookupList
closure_lookups(lookup_indices)

Returns sorted index of all lookups reachable from lookup_indices.

converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Lookup'>]
convertersByName = {'Lookup': Struct of <class 'fontTools.ttLib.tables.otTables.Lookup'>, 'LookupCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4ce9ee0>}
mapLookups(lookupMap)
mergeMap = {'Lookup': <function sumLists at 0xf4174898>, 'LookupCount': <built-in function sum>}
neuter_lookups(lookup_indices)

Sets lookups not in lookup_indices to None.

prune_post_subset(font, options)
subset_glyphs(s)

Returns the indices of nonempty lookups.

subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.LookupOrder
converters = []
convertersByName = {}
class fontTools.ttLib.tables.otTables.MATH
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathConstants'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphInfo'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathVariants'>]
convertersByName = {'MathConstants': Struct of <class 'fontTools.ttLib.tables.otTables.MathConstants'>, 'MathGlyphInfo': Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphInfo'>, 'MathVariants': Struct of <class 'fontTools.ttLib.tables.otTables.MathVariants'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d00f28>}
mergeMap = {'*': <function mergeObjects at 0xf4174778>, 'Version': <built-in function max>}
class fontTools.ttLib.tables.otTables.MVAR
converters = [<fontTools.ttLib.tables.otConverters.Version object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>, Struct of <class 'fontTools.ttLib.tables.otTables.MetricsValueRecord'>]
convertersByName = {'Reserved': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00eb0>, 'ValueRecord': Struct of <class 'fontTools.ttLib.tables.otTables.MetricsValueRecord'>, 'ValueRecordCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00e38>, 'ValueRecordSize': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00ec8>, 'VarStore': Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d00e98>}
fontTools.ttLib.tables.otTables.Mark1Array

alias of fontTools.ttLib.tables.otTables.MarkArray

fontTools.ttLib.tables.otTables.Mark1Coverage

alias of fontTools.ttLib.tables.otTables.Coverage

fontTools.ttLib.tables.otTables.Mark2Anchor

alias of fontTools.ttLib.tables.otTables.Anchor

class fontTools.ttLib.tables.otTables.Mark2Array
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Mark2Record'>]
convertersByName = {'Mark2Count': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b058b0>, 'Mark2Record': Struct of <class 'fontTools.ttLib.tables.otTables.Mark2Record'>}
fontTools.ttLib.tables.otTables.Mark2Coverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.Mark2Record
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>]
convertersByName = {'Mark2Anchor': Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>}
fontTools.ttLib.tables.otTables.MarkAnchor

alias of fontTools.ttLib.tables.otTables.Anchor

class fontTools.ttLib.tables.otTables.MarkArray
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MarkRecord'>]
convertersByName = {'MarkCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb148>, 'MarkRecord': Struct of <class 'fontTools.ttLib.tables.otTables.MarkRecord'>}
fontTools.ttLib.tables.otTables.MarkAttachClassDef

alias of fontTools.ttLib.tables.otTables.ClassDef

class fontTools.ttLib.tables.otTables.MarkBasePos
LookupType = 4
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05748>, Struct of <class 'fontTools.ttLib.tables.otTables.MarkArray'>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseArray'>]}
convertersByName = {1: {'MarkCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'BaseCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ClassCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05748>, 'MarkArray': Struct of <class 'fontTools.ttLib.tables.otTables.MarkArray'>, 'BaseArray': Struct of <class 'fontTools.ttLib.tables.otTables.BaseArray'>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
fontTools.ttLib.tables.otTables.MarkCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.MarkGlyphSetsDef
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>]
convertersByName = {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'MarkSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00028>, 'MarkSetTableFormat': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d000a0>}
mergeMap = {'Coverage': <function sumLists at 0xf4174898>, 'MarkSetCount': <built-in function sum>, 'MarkSetTableFormat': <function equal at 0xf4174220>}
class fontTools.ttLib.tables.otTables.MarkLigPos
LookupType = 5
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05808>, Struct of <class 'fontTools.ttLib.tables.otTables.MarkArray'>, Struct of <class 'fontTools.ttLib.tables.otTables.LigatureArray'>]}
convertersByName = {1: {'MarkCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'LigatureCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ClassCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05808>, 'MarkArray': Struct of <class 'fontTools.ttLib.tables.otTables.MarkArray'>, 'LigatureArray': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureArray'>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.MarkMarkPos
LookupType = 6
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b058f8>, Struct of <class 'fontTools.ttLib.tables.otTables.MarkArray'>, Struct of <class 'fontTools.ttLib.tables.otTables.Mark2Array'>]}
convertersByName = {1: {'Mark1Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'Mark2Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ClassCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b058f8>, 'Mark1Array': Struct of <class 'fontTools.ttLib.tables.otTables.MarkArray'>, 'Mark2Array': Struct of <class 'fontTools.ttLib.tables.otTables.Mark2Array'>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.MarkRecord
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>]
convertersByName = {'Class': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb2f8>, 'MarkAnchor': Struct of <class 'fontTools.ttLib.tables.otTables.Anchor'>}
class fontTools.ttLib.tables.otTables.MathConstants
converters = [<fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'AccentBaseHeight': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'AxisHeight': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'DelimitedSubFormulaMinHeight': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00fe8>, 'DisplayOperatorMinHeight': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00f10>, 'FlattenedAccentBaseHeight': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionDenomDisplayStyleGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionDenominatorDisplayStyleShiftDown': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionDenominatorGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionDenominatorShiftDown': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionNumDisplayStyleGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionNumeratorDisplayStyleShiftUp': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionNumeratorGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionNumeratorShiftUp': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'FractionRuleThickness': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'LowerLimitBaselineDropMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'LowerLimitGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'MathLeading': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'OverbarExtraAscender': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'OverbarRuleThickness': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'OverbarVerticalGap': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'RadicalDegreeBottomRaisePercent': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09508>, 'RadicalDisplayStyleVerticalGap': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'RadicalExtraAscender': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'RadicalKernAfterDegree': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'RadicalKernBeforeDegree': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'RadicalRuleThickness': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'RadicalVerticalGap': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'ScriptPercentScaleDown': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d00fb8>, 'ScriptScriptPercentScaleDown': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d00fd0>, 'SkewedFractionHorizontalGap': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SkewedFractionVerticalGap': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SpaceAfterScript': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StackBottomDisplayStyleShiftDown': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StackBottomShiftDown': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StackDisplayStyleGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StackGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StackTopDisplayStyleShiftUp': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StackTopShiftUp': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StretchStackBottomShiftDown': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StretchStackGapAboveMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StretchStackGapBelowMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'StretchStackTopShiftUp': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SubSuperscriptGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SubscriptBaselineDropMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SubscriptShiftDown': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SubscriptTopMax': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SuperscriptBaselineDropMax': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SuperscriptBottomMaxWithSubscript': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SuperscriptBottomMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SuperscriptShiftUp': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'SuperscriptShiftUpCramped': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'UnderbarExtraDescender': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'UnderbarRuleThickness': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'UnderbarVerticalGap': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'UpperLimitBaselineRiseMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'UpperLimitGapMin': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>}
class fontTools.ttLib.tables.otTables.MathGlyphConstruction
closure_glyphs(glyphs)
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.GlyphAssembly'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphVariantRecord'>]
convertersByName = {'GlyphAssembly': Struct of <class 'fontTools.ttLib.tables.otTables.GlyphAssembly'>, 'MathGlyphVariantRecord': Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphVariantRecord'>, 'VariantCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09760>}
class fontTools.ttLib.tables.otTables.MathGlyphInfo
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.MathItalicsCorrectionInfo'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathTopAccentAttachment'>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathKernInfo'>]
convertersByName = {'ExtendedShapeCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'MathItalicsCorrectionInfo': Struct of <class 'fontTools.ttLib.tables.otTables.MathItalicsCorrectionInfo'>, 'MathKernInfo': Struct of <class 'fontTools.ttLib.tables.otTables.MathKernInfo'>, 'MathTopAccentAttachment': Struct of <class 'fontTools.ttLib.tables.otTables.MathTopAccentAttachment'>}
subset_glyphs(s)
class fontTools.ttLib.tables.otTables.MathGlyphVariantRecord
converters = [<fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'AdvanceMeasurement': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09808>, 'VariantGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4d097f0>}
class fontTools.ttLib.tables.otTables.MathItalicsCorrectionInfo
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>]
convertersByName = {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ItalicsCorrection': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'ItalicsCorrectionCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d094f0>}
subset_glyphs(s)
class fontTools.ttLib.tables.otTables.MathKern
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>]
convertersByName = {'CorrectionHeight': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'HeightCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09640>, 'KernValue': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>}
fontTools.ttLib.tables.otTables.MathKernCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

class fontTools.ttLib.tables.otTables.MathKernInfo
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathKernInfoRecord'>]
convertersByName = {'MathKernCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d095f8>, 'MathKernCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'MathKernInfoRecords': Struct of <class 'fontTools.ttLib.tables.otTables.MathKernInfoRecord'>}
subset_glyphs(s)
class fontTools.ttLib.tables.otTables.MathKernInfoRecord
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>]
convertersByName = {'BottomLeftMathKern': Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>, 'BottomRightMathKern': Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>, 'TopLeftMathKern': Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>, 'TopRightMathKern': Struct of <class 'fontTools.ttLib.tables.otTables.MathKern'>}
class fontTools.ttLib.tables.otTables.MathTopAccentAttachment
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>]
convertersByName = {'TopAccentAttachment': Struct of <class 'fontTools.ttLib.tables.otTables.MathValueRecord'>, 'TopAccentAttachmentCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d095b0>, 'TopAccentCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>}
subset_glyphs(s)
class fontTools.ttLib.tables.otTables.MathValueRecord
converters = [<fontTools.ttLib.tables.otConverters.Short object>, Struct of <class 'fontTools.ttLib.tables.otTables.Device'>]
convertersByName = {'DeviceTable': Struct of <class 'fontTools.ttLib.tables.otTables.Device'>, 'Value': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d00f88>}
class fontTools.ttLib.tables.otTables.MathVariants
closure_glyphs(s)
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphConstruction'>, Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphConstruction'>]
convertersByName = {'HorizGlyphConstruction': Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphConstruction'>, 'HorizGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09748>, 'HorizGlyphCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'MinConnectorOverlap': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09700>, 'VertGlyphConstruction': Struct of <class 'fontTools.ttLib.tables.otTables.MathGlyphConstruction'>, 'VertGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d096e8>, 'VertGlyphCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>}
subset_glyphs(s)
fontTools.ttLib.tables.otTables.MaxCoord

alias of fontTools.ttLib.tables.otTables.BaseCoord

class fontTools.ttLib.tables.otTables.MetricsValueRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, <fontTools.ttLib.tables.otConverters.ULong object>, <fontTools.ttLib.tables.otConverters.UInt8 object>]
convertersByName = {'MoreBytes': <fontTools.ttLib.tables.otConverters.UInt8 object at 0xf4d00e80>, 'ValueTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d00e50>, 'VarIdx': <fontTools.ttLib.tables.otConverters.ULong object at 0xf4d00e68>}
fontTools.ttLib.tables.otTables.MinCoord

alias of fontTools.ttLib.tables.otTables.BaseCoord

class fontTools.ttLib.tables.otTables.MinMax
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>, Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatMinMaxRecord'>]
convertersByName = {'FeatMinMaxCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00298>, 'FeatMinMaxRecord': Struct of <class 'fontTools.ttLib.tables.otTables.FeatMinMaxRecord'>, 'MaxCoord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>, 'MinCoord': Struct of <class 'fontTools.ttLib.tables.otTables.BaseCoord'>}
class fontTools.ttLib.tables.otTables.MorphClass
converters = [<fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'FirstGlyph': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16898>}
class fontTools.ttLib.tables.otTables.MorphFeature
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.Flags32 object>, <fontTools.ttLib.tables.otConverters.Flags32 object>]
convertersByName = {'DisableFlags': <fontTools.ttLib.tables.otConverters.Flags32 object at 0xf4d16400>, 'EnableFlags': <fontTools.ttLib.tables.otConverters.Flags32 object at 0xf4d163e8>, 'FeatureSetting': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d163d0>, 'FeatureType': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d163b8>}
class fontTools.ttLib.tables.otTables.MortChain
converters = [<fontTools.ttLib.tables.otConverters.Flags32 object>, <fontTools.ttLib.tables.otConverters.ComputedULong object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.MorphFeature'>, Struct of <class 'fontTools.ttLib.tables.otTables.MortSubtable'>]
convertersByName = {'DefaultFlags': <fontTools.ttLib.tables.otConverters.Flags32 object at 0xf4d09f88>, 'MorphFeature': Struct of <class 'fontTools.ttLib.tables.otTables.MorphFeature'>, 'MorphFeatureCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09fa0>, 'MorphSubtable': Struct of <class 'fontTools.ttLib.tables.otTables.MortSubtable'>, 'MorphSubtableCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d09fb8>, 'StructLength': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d09f58>}
class fontTools.ttLib.tables.otTables.MortSubtable
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UInt8 object>, <fontTools.ttLib.tables.otConverters.ComputedUInt8 object>, <fontTools.ttLib.tables.otConverters.Flags32 object>, Struct of None]
convertersByName = {'AlternateSubst': Struct of <class 'fontTools.ttLib.tables.otTables.AlternateSubst'>, 'ChainContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextPos'>, 'ChainContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextSubst'>, 'ContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ContextPos'>, 'ContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ContextSubst'>, 'ContextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.ContextualMorph'>, 'CoverageFlags': <fontTools.ttLib.tables.otConverters.UInt8 object at 0xf4d16058>, 'CursivePos': Struct of <class 'fontTools.ttLib.tables.otTables.CursivePos'>, 'ExtensionPos': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionPos'>, 'ExtensionSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionSubst'>, 'InsertionMorph': Struct of <class 'fontTools.ttLib.tables.otTables.InsertionMorph'>, 'LigatureMorph': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureMorph'>, 'LigatureSubst': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureSubst'>, 'MarkBasePos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkBasePos'>, 'MarkLigPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkLigPos'>, 'MarkMarkPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkMarkPos'>, 'MorphType': <fontTools.ttLib.tables.otConverters.ComputedUInt8 object at 0xf4d16040>, 'MultipleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.MultipleSubst'>, 'NoncontextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.NoncontextualMorph'>, 'PairPos': Struct of <class 'fontTools.ttLib.tables.otTables.PairPos'>, 'RearrangementMorph': Struct of <class 'fontTools.ttLib.tables.otTables.RearrangementMorph'>, 'ReverseChainSingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ReverseChainSingleSubst'>, 'SinglePos': Struct of <class 'fontTools.ttLib.tables.otTables.SinglePos'>, 'SingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.SingleSubst'>, 'StructLength': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d16028>, 'SubFeatureFlags': <fontTools.ttLib.tables.otConverters.Flags32 object at 0xf4d16088>, 'SubStruct': Struct of None}
class fontTools.ttLib.tables.otTables.MorxChain
converters = [<fontTools.ttLib.tables.otConverters.Flags32 object>, <fontTools.ttLib.tables.otConverters.ComputedULong object>, <fontTools.ttLib.tables.otConverters.ComputedULong object>, <fontTools.ttLib.tables.otConverters.ComputedULong object>, Struct of <class 'fontTools.ttLib.tables.otTables.MorphFeature'>, <fontTools.ttLib.tables.otConverters.MorxSubtableConverter object>]
convertersByName = {'DefaultFlags': <fontTools.ttLib.tables.otConverters.Flags32 object at 0xf4d16328>, 'MorphFeature': Struct of <class 'fontTools.ttLib.tables.otTables.MorphFeature'>, 'MorphFeatureCount': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d16340>, 'MorphSubtable': <fontTools.ttLib.tables.otConverters.MorxSubtableConverter object at 0xf4d163a0>, 'MorphSubtableCount': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d16358>, 'StructLength': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d162f8>}
class fontTools.ttLib.tables.otTables.MorxSubtable
converters = [<fontTools.ttLib.tables.otConverters.ComputedULong object>, <fontTools.ttLib.tables.otConverters.UInt8 object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUInt8 object>, <fontTools.ttLib.tables.otConverters.Flags32 object>, Struct of None]
convertersByName = {'AlternateSubst': Struct of <class 'fontTools.ttLib.tables.otTables.AlternateSubst'>, 'ChainContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextPos'>, 'ChainContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ChainContextSubst'>, 'ContextPos': Struct of <class 'fontTools.ttLib.tables.otTables.ContextPos'>, 'ContextSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ContextSubst'>, 'ContextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.ContextualMorph'>, 'CoverageFlags': <fontTools.ttLib.tables.otConverters.UInt8 object at 0xf4d16430>, 'CursivePos': Struct of <class 'fontTools.ttLib.tables.otTables.CursivePos'>, 'ExtensionPos': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionPos'>, 'ExtensionSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ExtensionSubst'>, 'InsertionMorph': Struct of <class 'fontTools.ttLib.tables.otTables.InsertionMorph'>, 'LigatureMorph': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureMorph'>, 'LigatureSubst': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureSubst'>, 'MarkBasePos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkBasePos'>, 'MarkLigPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkLigPos'>, 'MarkMarkPos': Struct of <class 'fontTools.ttLib.tables.otTables.MarkMarkPos'>, 'MorphType': <fontTools.ttLib.tables.otConverters.ComputedUInt8 object at 0xf4d16418>, 'MultipleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.MultipleSubst'>, 'NoncontextualMorph': Struct of <class 'fontTools.ttLib.tables.otTables.NoncontextualMorph'>, 'PairPos': Struct of <class 'fontTools.ttLib.tables.otTables.PairPos'>, 'RearrangementMorph': Struct of <class 'fontTools.ttLib.tables.otTables.RearrangementMorph'>, 'Reserved': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16448>, 'ReverseChainSingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.ReverseChainSingleSubst'>, 'SinglePos': Struct of <class 'fontTools.ttLib.tables.otTables.SinglePos'>, 'SingleSubst': Struct of <class 'fontTools.ttLib.tables.otTables.SingleSubst'>, 'StructLength': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d16388>, 'SubFeatureFlags': <fontTools.ttLib.tables.otConverters.Flags32 object at 0xf4d16478>, 'SubStruct': Struct of None}
class fontTools.ttLib.tables.otTables.MultipleSubst[source]
LookupType = 2
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb3e8>, Struct of <class 'fontTools.ttLib.tables.otTables.Sequence'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'SequenceCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb3e8>, 'Sequence': Struct of <class 'fontTools.ttLib.tables.otTables.Sequence'>}}
fromXML(name, attrs, content, font)[source]
static makeSequence_(g)[source]
mapLookups(lookupMap)
may_have_non_1to1()
populateDefaults(propagator=None)[source]
postRead(rawTable, font)[source]
preWrite(font)[source]
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
toXML2(xmlWriter, font)[source]
class fontTools.ttLib.tables.otTables.NoncontextualMorph
LookupType = 4
converters = [<fontTools.ttLib.tables.otConverters.AATLookup object>]
convertersByName = {'Substitution': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d167d8>}
class fontTools.ttLib.tables.otTables.OpticalBounds
converters = {0: [<fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d16850>], 1: [<fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d16970>]}
convertersByName = {0: {'OpticalBoundsDeltas': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d16850>}, 1: {'OpticalBoundsPoints': <fontTools.ttLib.tables.otConverters.AATLookup object at 0xf4d16970>}}
class fontTools.ttLib.tables.otTables.OpticalBoundsDeltas
converters = [<fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>]
convertersByName = {'Bottom': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d16a18>, 'Left': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d169d0>, 'Right': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d16a00>, 'Top': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d169e8>}
class fontTools.ttLib.tables.otTables.OpticalBoundsPoints
converters = [<fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>, <fontTools.ttLib.tables.otConverters.Short object>]
convertersByName = {'Bottom': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d16a78>, 'Left': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d16a30>, 'Right': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d16a60>, 'Top': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d16a48>}
class fontTools.ttLib.tables.otTables.PairPos
LookupType = 2
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b054d8>, <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b05508>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05520>, Struct of <class 'fontTools.ttLib.tables.otTables.PairSet'>], 2: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b05538>, <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b055e0>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b055f8>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05640>, Struct of <class 'fontTools.ttLib.tables.otTables.Class1Record'>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ValueFormat1': <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b054d8>, 'ValueFormat2': <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b05508>, 'PairSetCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05520>, 'PairSet': Struct of <class 'fontTools.ttLib.tables.otTables.PairSet'>}, 2: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ValueFormat1': <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b05538>, 'ValueFormat2': <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b055e0>, 'ClassDef1': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'ClassDef2': Struct of <class 'fontTools.ttLib.tables.otTables.ClassDef'>, 'Class1Count': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b055f8>, 'Class2Count': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05640>, 'Class1Record': Struct of <class 'fontTools.ttLib.tables.otTables.Class1Record'>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.PairSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.PairValueRecord'>]
convertersByName = {'PairValueCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b054a8>, 'PairValueRecord': Struct of <class 'fontTools.ttLib.tables.otTables.PairValueRecord'>}
class fontTools.ttLib.tables.otTables.PairValueRecord
converters = [<fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.ValueRecord object>, <fontTools.ttLib.tables.otConverters.ValueRecord object>]
convertersByName = {'SecondGlyph': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05580>, 'Value1': <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b05598>, 'Value2': <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b055b0>}
class fontTools.ttLib.tables.otTables.PosClassRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>]
convertersByName = {'Class': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05b80>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05b20>, 'PosCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05b50>, 'PosLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>}
class fontTools.ttLib.tables.otTables.PosClassSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.PosClassRule'>]
convertersByName = {'PosClassRule': Struct of <class 'fontTools.ttLib.tables.otTables.PosClassRule'>, 'PosClassRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05af0>}
class fontTools.ttLib.tables.otTables.PosLookupRecord
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'LookupListIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b059d0>, 'SequenceIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b059b8>}
class fontTools.ttLib.tables.otTables.PosRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>]
convertersByName = {'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05a30>, 'Input': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05a90>, 'PosCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05a60>, 'PosLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.PosLookupRecord'>}
class fontTools.ttLib.tables.otTables.PosRuleSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.PosRule'>]
convertersByName = {'PosRule': Struct of <class 'fontTools.ttLib.tables.otTables.PosRule'>, 'PosRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05a00>}
class fontTools.ttLib.tables.otTables.RangeRecord
converters = [<fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'End': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05268>, 'Start': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4b05250>, 'StartCoverageIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4b05280>}
class fontTools.ttLib.tables.otTables.RearrangementMorph
LookupType = 0
converters = [<fontTools.ttLib.tables.otConverters.STXHeader object>]
convertersByName = {'StateTable': <fontTools.ttLib.tables.otConverters.STXHeader object at 0xf4d166b8>}
class fontTools.ttLib.tables.otTables.RearrangementMorphAction[source]
actionHeaderSize = 0
compile(writer, font, actionIndex)[source]
decompile(reader, font, actionReader)[source]
fromXML(name, attrs, content, font)[source]
staticSize = 4
toXML(xmlWriter, font, attrs, name)[source]
class fontTools.ttLib.tables.otTables.ReverseChainSingleSubst
LookupType = 8
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbd30>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbdf0>, Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbe20>, <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfbe68>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'BacktrackGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbd30>, 'BacktrackCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'LookAheadGlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbdf0>, 'LookAheadCoverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfbe20>, 'Substitute': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfbe68>}}
mapLookups(lookupMap)
may_have_non_1to1()
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.STAT
converters = [<fontTools.ttLib.tables.otConverters.Version object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.AxisRecordArray'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.AxisValueArray'>, <fontTools.ttLib.tables.otConverters.NameID object>]
convertersByName = {'AxisValueArray': Struct of <class 'fontTools.ttLib.tables.otTables.AxisValueArray'>, 'AxisValueCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00730>, 'DesignAxisCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d006b8>, 'DesignAxisRecord': Struct of <class 'fontTools.ttLib.tables.otTables.AxisRecordArray'>, 'DesignAxisRecordSize': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00700>, 'ElidedFallbackNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d00778>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d006e8>}
class fontTools.ttLib.tables.otTables.Script
collect_features()
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.LangSys'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.LangSysRecord'>]
convertersByName = {'DefaultLangSys': Struct of <class 'fontTools.ttLib.tables.otTables.LangSys'>, 'LangSysCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4ce4160>, 'LangSysRecord': Struct of <class 'fontTools.ttLib.tables.otTables.LangSysRecord'>}
mapFeatures(featureMap)
subset_features(feature_indices, keepEmptyDefaultLangSys=False)
class fontTools.ttLib.tables.otTables.ScriptList
collect_features()
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.ScriptRecord'>]
convertersByName = {'ScriptCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4af6ce8>, 'ScriptRecord': Struct of <class 'fontTools.ttLib.tables.otTables.ScriptRecord'>}
mapFeatures(featureMap)
mergeMap = {'ScriptCount': <function <lambda> at 0xf406b340>, 'ScriptRecord': <function mergeScriptRecords at 0xf406b388>}
subset_features(feature_indices, retain_empty)
class fontTools.ttLib.tables.otTables.ScriptRecord
converters = [<fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.Script'>]
convertersByName = {'Script': Struct of <class 'fontTools.ttLib.tables.otTables.Script'>, 'ScriptTag': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4af6f10>}
class fontTools.ttLib.tables.otTables.Sequence
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>]
convertersByName = {'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb430>, 'Substitute': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb478>}
class fontTools.ttLib.tables.otTables.Setting
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.NameID object>]
convertersByName = {'SettingNameID': <fontTools.ttLib.tables.otConverters.NameID object at 0xf4d09d60>, 'SettingValue': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d09d48>}
class fontTools.ttLib.tables.otTables.Settings
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.Setting'>]
convertersByName = {'Setting': Struct of <class 'fontTools.ttLib.tables.otTables.Setting'>}
fontTools.ttLib.tables.otTables.ShrinkageDisableGPOS

alias of fontTools.ttLib.tables.otTables.JstfGPOSModList

fontTools.ttLib.tables.otTables.ShrinkageDisableGSUB

alias of fontTools.ttLib.tables.otTables.JstfGSUBModList

fontTools.ttLib.tables.otTables.ShrinkageEnableGPOS

alias of fontTools.ttLib.tables.otTables.JstfGPOSModList

fontTools.ttLib.tables.otTables.ShrinkageEnableGSUB

alias of fontTools.ttLib.tables.otTables.JstfGSUBModList

fontTools.ttLib.tables.otTables.ShrinkageJstfMax

alias of fontTools.ttLib.tables.otTables.JstfMax

class fontTools.ttLib.tables.otTables.SinglePos
LookupType = 1
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b052e0>, <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b05460>], 2: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b05448>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05490>, <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b054c0>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ValueFormat': <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b052e0>, 'Value': <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b05460>}, 2: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'ValueFormat': <fontTools.ttLib.tables.otConverters.ValueFormat object at 0xf4b05448>, 'ValueCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4b05490>, 'Value': <fontTools.ttLib.tables.otConverters.ValueRecord object at 0xf4b054c0>}}
mapLookups(lookupMap)
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
class fontTools.ttLib.tables.otTables.SingleSubst[source]
LookupType = 1
closure_glyphs(s, cur_glyphs)
collect_lookups()
converters = {1: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb3b8>], 2: [Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb2c8>, <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb400>]}
convertersByName = {1: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'DeltaGlyphID': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb3b8>}, 2: {'Coverage': Struct of <class 'fontTools.ttLib.tables.otTables.Coverage'>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb2c8>, 'Substitute': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb400>}}
fromXML(name, attrs, content, font)[source]
mapLookups(lookupMap)
may_have_non_1to1()
populateDefaults(propagator=None)[source]
postRead(rawTable, font)[source]
preWrite(font)[source]
prune_post_subset(font, options)
subset_glyphs(s)
subset_lookups(lookup_indices)
toXML2(xmlWriter, font)[source]
class fontTools.ttLib.tables.otTables.StateHeader
converters = [<fontTools.ttLib.tables.otConverters.ComputedULong object>, <fontTools.ttLib.tables.otConverters.ULong object>, <fontTools.ttLib.tables.otConverters.ULong object>, <fontTools.ttLib.tables.otConverters.ULong object>]
convertersByName = {'ClassCount': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d16610>, 'EntryTableOffset': <fontTools.ttLib.tables.otConverters.ULong object at 0xf4d16700>, 'MorphClass': <fontTools.ttLib.tables.otConverters.ULong object at 0xf4d166d0>, 'StateArrayOffset': <fontTools.ttLib.tables.otConverters.ULong object at 0xf4d166e8>}
class fontTools.ttLib.tables.otTables.SubClassRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>]
convertersByName = {'Class': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb790>, 'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb730>, 'SubstCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb760>, 'SubstLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>}
class fontTools.ttLib.tables.otTables.SubClassSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.SubClassRule'>]
convertersByName = {'SubClassRule': Struct of <class 'fontTools.ttLib.tables.otTables.SubClassRule'>, 'SubClassRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb700>}
class fontTools.ttLib.tables.otTables.SubRule
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.GlyphID object>, Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>]
convertersByName = {'GlyphCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb640>, 'Input': <fontTools.ttLib.tables.otConverters.GlyphID object at 0xf4cfb6a0>, 'SubstCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb670>, 'SubstLookupRecord': Struct of <class 'fontTools.ttLib.tables.otTables.SubstLookupRecord'>}
class fontTools.ttLib.tables.otTables.SubRuleSet
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.SubRule'>]
convertersByName = {'SubRule': Struct of <class 'fontTools.ttLib.tables.otTables.SubRule'>, 'SubRuleCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4cfb610>}
class fontTools.ttLib.tables.otTables.SubstLookupRecord
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>]
convertersByName = {'LookupListIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb5e0>, 'SequenceIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4cfb5c8>}
class fontTools.ttLib.tables.otTables.TSIC
converters = [<fontTools.ttLib.tables.otConverters.Version object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.Tag object>, Struct of <class 'fontTools.ttLib.tables.otTables.LocationRecord'>, Struct of <class 'fontTools.ttLib.tables.otTables.TSICRecord'>]
convertersByName = {'AxisArray': <fontTools.ttLib.tables.otConverters.Tag object at 0xf4d16b08>, 'AxisCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d169a0>, 'Flags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16aa8>, 'Record': Struct of <class 'fontTools.ttLib.tables.otTables.TSICRecord'>, 'RecordCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d16ac0>, 'RecordLocations': Struct of <class 'fontTools.ttLib.tables.otTables.LocationRecord'>, 'Reserved': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16af0>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d16a90>}
class fontTools.ttLib.tables.otTables.TSICRecord
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.Short object>]
convertersByName = {'CVTArray': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16bc8>, 'CVTValueArray': <fontTools.ttLib.tables.otConverters.Short object at 0xf4d16be0>, 'Flags': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16b68>, 'NameArray': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16bb0>, 'NameLength': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16b98>, 'NumCVTEntries': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d16b80>}
fontTools.ttLib.tables.otTables.TopAccentCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

fontTools.ttLib.tables.otTables.TopLeftMathKern

alias of fontTools.ttLib.tables.otTables.MathKern

fontTools.ttLib.tables.otTables.TopRightMathKern

alias of fontTools.ttLib.tables.otTables.MathKern

class fontTools.ttLib.tables.otTables.VVAR
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>]
convertersByName = {'AdvHeightMap': Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, 'BsbMap': Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, 'TsbMap': Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, 'VOrgMap': Struct of <class 'fontTools.ttLib.tables.otTables.VarIdxMap'>, 'VarStore': Struct of <class 'fontTools.ttLib.tables.otTables.VarStore'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d00dc0>}
class fontTools.ttLib.tables.otTables.VarData
addItem(deltas)
calculateNumShorts(optimize=False)
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.VarDataValue object>]
convertersByName = {'Item': <fontTools.ttLib.tables.otConverters.VarDataValue object at 0xf4d00c88>, 'ItemCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00c10>, 'NumShorts': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00c40>, 'VarRegionCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00c28>, 'VarRegionIndex': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00c70>}
optimize()
class fontTools.ttLib.tables.otTables.VarIdxMap[source]
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.VarIdxMapValue object>]
convertersByName = {'EntryFormat': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00d00>, 'MappingCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00cd0>, 'mapping': <fontTools.ttLib.tables.otConverters.VarIdxMapValue object at 0xf4d00d30>}
fromXML(name, attrs, content, font)[source]
populateDefaults(propagator=None)[source]
postRead(rawTable, font)[source]
preWrite(font)[source]
toXML2(xmlWriter, font)[source]
class fontTools.ttLib.tables.otTables.VarRegion
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.VarRegionAxis'>]
convertersByName = {'VarRegionAxis': Struct of <class 'fontTools.ttLib.tables.otTables.VarRegionAxis'>}
get_support(fvar_axes)
class fontTools.ttLib.tables.otTables.VarRegionAxis
converters = [<fontTools.ttLib.tables.otConverters.F2Dot14 object>, <fontTools.ttLib.tables.otConverters.F2Dot14 object>, <fontTools.ttLib.tables.otConverters.F2Dot14 object>]
convertersByName = {'EndCoord': <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d00bb0>, 'PeakCoord': <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d00b98>, 'StartCoord': <fontTools.ttLib.tables.otConverters.F2Dot14 object at 0xf4d00b80>}
class fontTools.ttLib.tables.otTables.VarRegionList
converters = [<fontTools.ttLib.tables.otConverters.ComputedUShort object>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.VarRegion'>]
convertersByName = {'Region': Struct of <class 'fontTools.ttLib.tables.otTables.VarRegion'>, 'RegionAxisCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00b38>, 'RegionCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00be0>}
class fontTools.ttLib.tables.otTables.VarStore
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.VarRegionList'>, <fontTools.ttLib.tables.otConverters.ComputedUShort object>, Struct of <class 'fontTools.ttLib.tables.otTables.VarData'>]
convertersByName = {'Format': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d00ca0>, 'VarData': Struct of <class 'fontTools.ttLib.tables.otTables.VarData'>, 'VarDataCount': <fontTools.ttLib.tables.otConverters.ComputedUShort object at 0xf4d00c58>, 'VarRegionList': Struct of <class 'fontTools.ttLib.tables.otTables.VarRegionList'>}
optimize()

Optimize storage. Returns mapping from old VarIdxes to new ones.

prune_regions()

Remove unused VarRegions.

subset_varidxes(varIdxes, optimize=True, retainFirstMap=False, advIdxes=set())
fontTools.ttLib.tables.otTables.VertAxis

alias of fontTools.ttLib.tables.otTables.Axis

fontTools.ttLib.tables.otTables.VertGlyphConstruction

alias of fontTools.ttLib.tables.otTables.MathGlyphConstruction

fontTools.ttLib.tables.otTables.VertGlyphCoverage

alias of fontTools.ttLib.tables.otTables.Coverage

fontTools.ttLib.tables.otTables.XAdvDevice

alias of fontTools.ttLib.tables.otTables.Device

fontTools.ttLib.tables.otTables.XDeviceTable

alias of fontTools.ttLib.tables.otTables.Device

fontTools.ttLib.tables.otTables.XPlaDevice

alias of fontTools.ttLib.tables.otTables.Device

fontTools.ttLib.tables.otTables.YAdvDevice

alias of fontTools.ttLib.tables.otTables.Device

fontTools.ttLib.tables.otTables.YDeviceTable

alias of fontTools.ttLib.tables.otTables.Device

fontTools.ttLib.tables.otTables.YPlaDevice

alias of fontTools.ttLib.tables.otTables.Device

class fontTools.ttLib.tables.otTables.ankr
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.AnchorPoints'>]
convertersByName = {'AnchorPoints': Struct of <class 'fontTools.ttLib.tables.otTables.AnchorPoints'>}
class fontTools.ttLib.tables.otTables.bsln
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.Baseline'>]
convertersByName = {'Baseline': Struct of <class 'fontTools.ttLib.tables.otTables.Baseline'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d099d0>}
class fontTools.ttLib.tables.otTables.cidg
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.CIDGlyphMapping'>]
convertersByName = {'CIDGlyphMapping': Struct of <class 'fontTools.ttLib.tables.otTables.CIDGlyphMapping'>}
class fontTools.ttLib.tables.otTables.feat
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.FeatureNames'>]
convertersByName = {'FeatureNames': Struct of <class 'fontTools.ttLib.tables.otTables.FeatureNames'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d09c28>}
fontTools.ttLib.tables.otTables.fixLookupOverFlows(ttf, overflowRecord)[source]

Either the offset from the LookupList to a lookup overflowed, or an offset from a lookup to a subtable overflowed. The table layout is: GPSO/GUSB

Script List Feature List LookUpList

Lookup[0] and contents
SubTable offset list
SubTable[0] and contents … SubTable[n] and contents

… Lookup[n] and contents

SubTable offset list
SubTable[0] and contents … SubTable[n] and contents
If the offset to a lookup overflowed (SubTableIndex is None)
we must promote the previous lookup to an Extension type.
If the offset from a lookup to subtable overflowed, then we must promote it
to an Extension Lookup type.
fontTools.ttLib.tables.otTables.fixSubTableOverFlows(ttf, overflowRecord)[source]

An offset has overflowed within a sub-table. We need to divide this subtable into smaller parts.

class fontTools.ttLib.tables.otTables.gcid
converters = [Struct of <class 'fontTools.ttLib.tables.otTables.GlyphCIDMapping'>]
convertersByName = {'GlyphCIDMapping': Struct of <class 'fontTools.ttLib.tables.otTables.GlyphCIDMapping'>}
class fontTools.ttLib.tables.otTables.lcar
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.LigatureCarets'>]
convertersByName = {'LigatureCarets': Struct of <class 'fontTools.ttLib.tables.otTables.LigatureCarets'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d09e50>}
class fontTools.ttLib.tables.otTables.mort
converters = [<fontTools.ttLib.tables.otConverters.Version object>, <fontTools.ttLib.tables.otConverters.ComputedULong object>, Struct of <class 'fontTools.ttLib.tables.otTables.MortChain'>]
convertersByName = {'MorphChain': Struct of <class 'fontTools.ttLib.tables.otTables.MortChain'>, 'MorphChainCount': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d09f10>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d09f40>}
class fontTools.ttLib.tables.otTables.morx
converters = [<fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.UShort object>, <fontTools.ttLib.tables.otConverters.ComputedULong object>, Struct of <class 'fontTools.ttLib.tables.otTables.MorxChain'>]
convertersByName = {'MorphChain': Struct of <class 'fontTools.ttLib.tables.otTables.MorxChain'>, 'MorphChainCount': <fontTools.ttLib.tables.otConverters.ComputedULong object at 0xf4d16220>, 'Reserved': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d162e0>, 'Version': <fontTools.ttLib.tables.otConverters.UShort object at 0xf4d162c8>}
class fontTools.ttLib.tables.otTables.opbd
converters = [<fontTools.ttLib.tables.otConverters.Version object>, Struct of <class 'fontTools.ttLib.tables.otTables.OpticalBounds'>]
convertersByName = {'OpticalBounds': Struct of <class 'fontTools.ttLib.tables.otTables.OpticalBounds'>, 'Version': <fontTools.ttLib.tables.otConverters.Version object at 0xf4d16940>}
class fontTools.ttLib.tables.otTables.prop
converters = [<fontTools.ttLib.tables.otConverters.Fixed object>, Struct of <class 'fontTools.ttLib.tables.otTables.GlyphProperties'>]
convertersByName = {'GlyphProperties': Struct of <class 'fontTools.ttLib.tables.otTables.GlyphProperties'>, 'Version': <fontTools.ttLib.tables.otConverters.Fixed object at 0xf4d168b0>}
fontTools.ttLib.tables.otTables.splitAlternateSubst(oldSubTable, newSubTable, overflowRecord)[source]
fontTools.ttLib.tables.otTables.splitLigatureSubst(oldSubTable, newSubTable, overflowRecord)[source]
fontTools.ttLib.tables.otTables.splitMarkBasePos(oldSubTable, newSubTable, overflowRecord)[source]
fontTools.ttLib.tables.otTables.splitPairPos(oldSubTable, newSubTable, overflowRecord)[source]

S_I_N_G

class fontTools.ttLib.tables.S_I_N_G_.table_S_I_N_G_(tag=None)[source]
compile(ttFont)[source]
compilecompileUniqueName(name, length)[source]
decompile(data, ttFont)[source]
decompileUniqueName(data)[source]
dependencies = []
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

S_T_A_T

class fontTools.ttLib.tables.S_T_A_T_.table_S_T_A_T_(tag=None)[source]

S_V_G

Compiles/decompiles version 0 and 1 SVG tables from/to XML.

Version 1 is the first SVG definition, implemented in Mozilla before Aug 2013, now deprecated. This module will decompile this correctly, but will compile a version 1 table only if you add the secret element “<version1/>” to the SVG element in the TTF file.

Version 0 is the joint Adobe-Mozilla proposal, which supports color palettes.

The XML format is: <SVG>

<svgDoc endGlyphID=”1” startGlyphID=”1”>
<![CDATA[ <complete SVG doc> ]]

</svgDoc>

<svgDoc endGlyphID=”n” startGlyphID=”m”>
<![CDATA[ <complete SVG doc> ]]

</svgDoc>

<colorPalettes>

<colorParamUINameID>n</colorParamUINameID> … <colorParamUINameID>m</colorParamUINameID> <colorPalette uiNameID=”n”>

<colorRecord red=”<int>” green=”<int>” blue=”<int>” alpha=”<int>” /> … <colorRecord red=”<int>” green=”<int>” blue=”<int>” alpha=”<int>” />

</colorPalette> … <colorPalette uiNameID=”m”>

<colorRecord red=”<int> green=”<int>” blue=”<int>” alpha=”<int>” /> … <colorRecord red=<int>” green=”<int>” blue=”<int>” alpha=”<int>” />

</colorPalette>

</colorPalettes>

</SVG>

Color values must be less than 256.

The number of color records in each </colorPalette> must be the same as the number of <colorParamUINameID> elements.

class fontTools.ttLib.tables.S_V_G_.ColorPalette[source]
fromXML(name, attrs, content, ttFont)[source]
class fontTools.ttLib.tables.S_V_G_.ColorPalettes[source]
fromXML(name, attrs, content, ttFont)[source]
class fontTools.ttLib.tables.S_V_G_.ColorRecord[source]
class fontTools.ttLib.tables.S_V_G_.DocumentIndexEntry[source]
class fontTools.ttLib.tables.S_V_G_.table_S_V_G_(tag=None)[source]
compile(ttFont)[source]
compileFormat0(ttFont)[source]
compileFormat1(ttFont)[source]
decompile(data, ttFont)[source]
decompileEntryList(data)[source]
decompile_format_0(data, ttFont)[source]
decompile_format_1(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

sbixGlyph

class fontTools.ttLib.tables.sbixGlyph.Glyph(glyphName=None, referenceGlyphName=None, originOffsetX=0, originOffsetY=0, graphicType=None, imageData=None, rawdata=None, gid=0)[source]
compile(ttFont)[source]
decompile(ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(xmlWriter, ttFont)[source]

sbixStrike

class fontTools.ttLib.tables.sbixStrike.Strike(rawdata=None, ppem=0, resolution=72)[source]
compile(ttFont)[source]
decompile(ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(xmlWriter, ttFont)[source]

T_S_I__0

TSI{0,1,2,3,5} are private tables used by Microsoft Visual TrueType (VTT) tool to store its hinting source data.

TSI0 is the index table containing the lengths and offsets for the glyph programs and ‘extra’ programs (‘fpgm’, ‘prep’, and ‘cvt’) that are contained in the TSI1 table.

fontTools.ttLib.tables.T_S_I__0.fixlongs(glyphID, textLength, textOffset)[source]
class fontTools.ttLib.tables.T_S_I__0.table_T_S_I__0(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
dependencies = ['TSI1']
set(indices, extra_indices)[source]
toXML(writer, ttFont)[source]

T_S_I__1

TSI{0,1,2,3,5} are private tables used by Microsoft Visual TrueType (VTT) tool to store its hinting source data.

TSI1 contains the text of the glyph programs in the form of low-level assembly code, as well as the ‘extra’ programs ‘fpgm’, ‘ppgm’ (i.e. ‘prep’), and ‘cvt’.

class fontTools.ttLib.tables.T_S_I__1.table_T_S_I__1(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
extras = {65530: 'ppgm', 65531: 'cvt', 65532: 'reserved', 65533: 'fpgm'}
fromXML(name, attrs, content, ttFont)[source]
indextable = 'TSI0'
toXML(writer, ttFont)[source]

T_S_I__2

TSI{0,1,2,3,5} are private tables used by Microsoft Visual TrueType (VTT) tool to store its hinting source data.

TSI2 is the index table containing the lengths and offsets for the glyph programs that are contained in the TSI3 table. It uses the same format as the TSI0 table.

class fontTools.ttLib.tables.T_S_I__2.table_T_S_I__2(tag=None)[source]
dependencies = ['TSI3']

T_S_I__3

TSI{0,1,2,3,5} are private tables used by Microsoft Visual TrueType (VTT) tool to store its hinting source data.

TSI3 contains the text of the glyph programs in the form of ‘VTTTalk’ code.

class fontTools.ttLib.tables.T_S_I__3.table_T_S_I__3(tag=None)[source]
extras = {65530: 'reserved0', 65531: 'reserved1', 65532: 'reserved2', 65533: 'reserved3'}
indextable = 'TSI2'

T_S_I__5

TSI{0,1,2,3,5} are private tables used by Microsoft Visual TrueType (VTT) tool to store its hinting source data.

TSI5 contains the VTT character groups.

class fontTools.ttLib.tables.T_S_I__5.table_T_S_I__5(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

ttProgram

ttLib.tables.ttProgram.py – Assembler/disassembler for TrueType bytecode programs.

class fontTools.ttLib.tables.ttProgram.Program[source]
fromAssembly(assembly)[source]
fromBytecode(bytecode)[source]
fromXML(name, attrs, content, ttFont)[source]
getAssembly(preserve=True)[source]
getBytecode()[source]
toXML(writer, ttFont)[source]
fontTools.ttLib.tables.ttProgram.bitRepr(value, bits)[source]
exception fontTools.ttLib.tables.ttProgram.tt_instructions_error(error)[source]

TupleVariation

class fontTools.ttLib.tables.TupleVariation.TupleVariation(axes, coordinates)[source]
calcInferredDeltas(origCoords, endPts)[source]
compile(axisTags, sharedCoordIndices, sharedPoints)[source]
compileCoord(axisTags)[source]
static compileDeltaValues_(deltas)[source]

[value1, value2, value3, …] –> bytestring

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.

compileDeltas(points)[source]
compileIntermediateCoord(axisTags)[source]
static compilePoints(points, numPointsInGlyph)[source]
static decompileCoord_(axisTags, data, offset)[source]
static decompileDeltas_(numDeltas, data, offset)[source]

(numDeltas, data, offset) –> ([delta, delta, …], newOffset)

static decompilePoints_(numPoints, data, offset, tableTag)[source]

(numPoints, data, offset, tableTag) –> ([point1, point2, …], newOffset)

static encodeDeltaRunAsBytes_(deltas, offset, stream)[source]
static encodeDeltaRunAsWords_(deltas, offset, stream)[source]
static encodeDeltaRunAsZeroes_(deltas, offset, stream)[source]
fromXML(name, attrs, _content)[source]
getCoordWidth()[source]

Return 2 if coordinates are (x, y) as in gvar, 1 if single values as in cvar, or 0 if empty.

static getTupleSize_(flags, axisCount)[source]
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.

optimize(origCoords, endPts, tolerance=0.5, isComposite=False)[source]
roundDeltas()[source]
scaleDeltas(scalar)[source]
toXML(writer, axisTags)[source]
fontTools.ttLib.tables.TupleVariation.compileSharedTuples(axisTags, variations)[source]
fontTools.ttLib.tables.TupleVariation.compileTupleVariationStore(variations, pointCount, axisTags, sharedTupleIndices, useSharedPoints=True)[source]
fontTools.ttLib.tables.TupleVariation.decompileSharedTuples(axisTags, sharedTupleCount, data, offset)[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.

V_D_M_X

class fontTools.ttLib.tables.V_D_M_X_.table_V_D_M_X_(tag=None)[source]
compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]

V_O_R_G

class fontTools.ttLib.tables.V_O_R_G_.VOriginRecord(name=None, vOrigin=None)[source]
fromXML(name, attrs, content, ttFont)[source]
toXML(writer, ttFont)[source]
class fontTools.ttLib.tables.V_O_R_G_.table_V_O_R_G_(tag=None)[source]

This table is structured so that you can treat it like a dictionary keyed by glyph name. ttFont[‘VORG’][<glyphName>] will return the vertical origin for any glyph ttFont[‘VORG’][<glyphName>] = <value> will set the vertical origin for any glyph.

compile(ttFont)[source]
decompile(data, ttFont)[source]
fromXML(name, attrs, content, ttFont)[source]
subset_glyphs(s)
toXML(writer, ttFont)[source]

V_V_A_R

class fontTools.ttLib.tables.V_V_A_R_.table_V_V_A_R_(tag=None)[source]
subset_glyphs(s)