package
0.1.1
Repository: https://github.com/go-text/typesetting.git
Documentation: pkg.go.dev

# Functions

DecodeMacintosh decode a Macintosh encoded string.
DecodeMacintoshByte returns the rune for the given byte.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ParseGlyf parses the 'glyf' table.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
We apply the following logic: - read the first uint16 -> it's always the major version - if it's 0, we have a Miscrosoft table - if it's 1, we have an Apple table.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
shared with gvar, sbix, eblc return an error only if data is not long enough.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ParseUint16s interprets data as a (big endian) uint16 slice.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Constants

Mask for having any Device table.
Hebrew Windows 3.1 font page */.
No description provided by the author
OEM Arabic Windows 3.1 font page */.
Simplified Arabic Windows 3.1 font page */.
Simplified Farsi Windows 3.1 font page */.
Thai Windows 3.1 font page */.
Traditional Arabic Windows 3.1 font page */.
Traditional Farsi Windows 3.1 font page */.
No description provided by the author
No description provided by the author
No description provided by the author
Byte offset from beginning of subtable to the value table for the glyphs on the kerning stack.
If set, don't advance to the next glyph before going to the new state.
If set, push this glyph on the kerning stack.
If set, reset the kerning data (clear the stack).
If set, specifies that insertions are to be made to the left of the current glyph.
This 5-bit field is treated as a count of the number of glyphs to insert at the current position.
If set, and the currentInsertList is nonzero, then the specified glyph list will be inserted as a kashida-like insertion, either before or after the current glyph (depending on the state of the currentInsertBefore flag).
If set, don't advance to the next glyph before going to the new state.
If set, specifies that insertions are to be made to the left of the marked glyph.
This 5-bit field is treated as a count of the number of glyphs to insert at the marked position.
If set, and the markedInsertList is nonzero, then the specified glyph list will be inserted as a kashida-like insertion, either before or after the marked glyph (depending on the state of the markedInsertBefore flag).
If set, mark the current glyph.
This is the last action in the list.
A 30-bit value which is sign-extended to 32-bits and added to the glyph ID, resulting in an index into the component table.
Store the ligature at the current cumulated index in the ligature table in place of the marked (i.e.
Leave the glyph pointer at this glyph for the next iteration.
Byte offset from beginning of subtable to the ligature action list.
Use the ligActionIndex to process a ligature group.
Push this glyph onto the component stack for eventual processing.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
artificial.
No description provided by the author
deprecated.
No description provided by the author
No description provided by the author
No description provided by the author
Includes horizontal adjustment for advance.
Includes horizontal Device table for advance.
Includes horizontal adjustment for placement.
Includes horizontal Device table for placement.
Includes vertical adjustment for advance.
Includes vertical Device table for advance.
Includes vertical adjustment for placement.
Includes vertical Device table for placement.

# Structs

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
AATStateEntry is shared between old and extended state tables, and between the different kind of entries.
State table header, without the actual data See https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6Tables.html.
Extended state table, including the data See https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6Tables.html - State tables binarygen: argument=entryDataSize int.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
AnchorMatrix is a compact representation of a [][]Anchor.
Ankr is the anchor point table See - https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6ankr.html.
AnkrAnchor is a point within the coordinate space of a given glyph independent of the control points used to render the glyph.
No description provided by the author
No description provided by the author
avar — Axis Variations Table.
No description provided by the author
No description provided by the author
No description provided by the author
Format 17: small metrics, PNG image data.
Format 18: big metrics, PNG image data.
Format 19: metrics in CBLC table, PNG image data.
Format 2: small metrics, bit-aligned data.
Format 5: metrics in CBLC table, bit-aligned image data only.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
CBLC is the Color Bitmap Location Table See - https://learn.microsoft.com/fr-fr/typography/opentype/spec/cblc.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ClassTable is the same as AATLookup8, but with no format and with bytes instead of uint16s.
Cmap is the Character to Glyph Index Mapping table See https://learn.microsoft.com/en-us/typography/opentype/spec/cmap.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
DefaultUVSTable is used in Cmap format 14 See https://learn.microsoft.com/en-us/typography/opentype/spec/cmap#default-uvs-table.
No description provided by the author
No description provided by the author
DeviceTableHeader is the common header for DeviceTable See https://learn.microsoft.com/fr-fr/typography/opentype/spec/chapter2#device-and-variationindex-tables.
No description provided by the author
No description provided by the author
No description provided by the author
Feat is the feature name table.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Fvar is the Font Variations Table.
binarygen: argument=instanceCount int binarygen: argument=instanceSize int.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
See - https://learn.microsoft.com/fr-fr/typography/opentype/spec/gvar.
TableHead contains critical information about the rest of the font.
https://learn.microsoft.com/en-us/typography/opentype/spec/hhea.
https://learn.microsoft.com/en-us/typography/opentype/spec/hmtx.
See - https://learn.microsoft.com/fr-fr/typography/opentype/spec/hvar.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Kern is the kern table.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Kerx is the extended kerning table See https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6kerx.html.
No description provided by the author
No description provided by the author
No description provided by the author
binarygen: argument=tupleCount int.
binarygen: argument=tupleCount int binarygen: argument=valuesCount int.
No description provided by the author
binarygen: argument=valuesCount int.
binarygen: argument=tupleCount int binarygen: argument=valuesCount int.
binarygen: argument=valuesCount int.
No description provided by the author
Layout represents the common layout table used by GPOS and GSUB.
Glyph components for one ligature.
No description provided by the author
No description provided by the author
All ligatures beginning with the same glyph.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Lookup is the common format for GSUB and GPOS lookups.
No description provided by the author
Ltag is the language tags table See https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6ltag.html.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
https://learn.microsoft.com/en-us/typography/opentype/spec/Maxp.
Morx is the extended glyph metamorphosis table See https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6morx.html.
MorxChain is a set of subtables.
No description provided by the author
binarygen: argument=valuesCount int.
binarygen: argument=valuesCount int.
binarygen: argument=valuesCount int.
No description provided by the author
binarygen: argument=valuesCount int.
No description provided by the author
No description provided by the author
Naming table See https://learn.microsoft.com/en-us/typography/opentype/spec/name.
OS/2 and Windows Metrics Table See https://learn.microsoft.com/en-us/typography/opentype/spec/os2.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
binarygen: argument=valueFormat1 ValueFormat binarygen: argument=valueFormat2 ValueFormat.
No description provided by the author
Post
PostScript table See https://learn.microsoft.com/en-us/typography/opentype/spec/post.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Sbix is the Standard Bitmap Graphics Table See - https://learn.microsoft.com/fr-fr/typography/opentype/spec/sbix.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Strike stores one size of bitmap glyphs in the 'sbix' table.
No description provided by the author
SVG is the SVG (Scalable Vector Graphics) table.
No description provided by the author
Each SVG document record specifies a range of glyph IDs (from startGlyphID to endGlyphID, inclusive), and the location of its associated SVG document in the SVG table.
No description provided by the author
No description provided by the author
No description provided by the author
Trak is the tracking table.
No description provided by the author
binarygen: argument=axisCount int.
No description provided by the author
No description provided by the author
UVSMappingTable is used in Cmap format 14 See https://learn.microsoft.com/en-us/typography/opentype/spec/cmap#non-default-uvs-table.
ValueRecord has optional fields.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
VariationStoreIndex reference an item in the variation store.
No description provided by the author
No description provided by the author
VORG is the Vertical Origin Table See - https://learn.microsoft.com/fr-fr/typography/opentype/spec/vorg.

# Interfaces

AATLookup is conceptually a map[GlyphID]uint16, but it may be implemented more efficiently.
AATLookupExt is the same as AATLookup, but class values are uint32.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ClassDef stores a value for a set of GlyphIDs.
CmapSubtable is the union type for the various cmap formats.
No description provided by the author
No description provided by the author
Coverage specifies all the glyphs affected by a substitution or positioning operation described in a subtable.
DeviceTable is either an DeviceHinting for standard fonts, or a DeviceVariation for variable fonts.
No description provided by the author
No description provided by the author
GSUBLookup is one lookup subtable data.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Type aliases

No description provided by the author
Bloc is the bitmap location table See - https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6bloc.html.
CFF is the Compact Font Format Table.
ChainedClassSequenceRuleSet has the same binary format as ChainedSequenceRuleSet, and using the same type simplifies later processing.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ClassSequenceRuleSet has the same binary format as SequenceRuleSet, and using the same type simplifies later processing.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Coord is real number in [-1;1], stored as a fixed 2.14 integer.
No description provided by the author
EBLC is the Embedded Bitmap Location Table See - https://learn.microsoft.com/fr-fr/typography/opentype/spec/eblc.
EncodingID represents the platform specific id for entries in the name table.
No description provided by the author
No description provided by the author
Float1616 is a float32, represented in fixed 16.16 format in font files.
See https://docs.microsoft.com/en-us/typography/legacy/legacy_arabic_fonts https://github.com/Microsoft/Font-Validator/blob/520aaae/OTFontFileVal/val_OS2.cs#L644-L681.
Glyph Data.
No description provided by the author
GlyphProps is a 16-bit integer where the lower 8-bit have bits representing glyph class, and high 8-bit the mark attachment type (if any).
GPOS is the Glyph Positioning (GPOS) table.
GSUB is the Glyph Substitution (GSUB) table.
LanguageID represents the language used by an entry in the name table.
MorxSubtableVersion indicates the kind of 'morx' subtable.
NameID is the ID for entries in the font table.
Offset16 is an offset into the input byte slice.
Offset32 is an offset into the input byte slice.
PlatformID represents the platform id for entries in the name table.
No description provided by the author
No description provided by the author
ValueFormat is a mask indicating which field are set in a GPOS [ValueRecord].
https://learn.microsoft.com/en-us/typography/opentype/spec/vhea.
https://learn.microsoft.com/en-us/typography/opentype/spec/vmtx.
See - https://learn.microsoft.com/fr-fr/typography/opentype/spec/vvar.