class FontloaderPfminfo
The pfminfo table contains most of the OS/2 information.
PFM stands for PostScript Font Metrics and is the suffix of a file associated with a PostScript Type 1 font. The PFM file contains metric data such as kerning values.
Reference:
- Corresponding C source code: luafflib.c#L1200-L1281
- https://www.typografie.info/3/wiki.html/p/pfm-r2/
- https://github.com/fontforge/fontforge/blob/2d4ccf06b68ce1e31386cbfa5822d448378b6500/fontforge/splinefont.h#L1112-L1148
😱 Types incomplete or incorrect? 🙏 Please contribute!
fields
FontloaderPfminfo.pfmset
for example 0 or 1.
FontloaderPfminfo.winascent_add
for example 0 or 1.
FontloaderPfminfo.windescent_add
for example 0 or 1.
FontloaderPfminfo.hheadascent_add
for example 0 or 1.
FontloaderPfminfo.hheaddescent_add
for example 0 or 1.
FontloaderPfminfo.typoascent_add
for example 0 or 1.
FontloaderPfminfo.typodescent_add
for example 0 or 1.
FontloaderPfminfo.subsuper_set
for example 0 or 1.
FontloaderPfminfo.panose_set
for example 0 or 1.
FontloaderPfminfo.hheadset
for example 0 or 1.
FontloaderPfminfo.vheadset
for example 0 or 1.
FontloaderPfminfo.pfmfamily
for example 17, 65 or 81.
FontloaderPfminfo.weight
for example 400.
FontloaderPfminfo.width
for example 5.
FontloaderPfminfo.avgwidth
for example 725.
FontloaderPfminfo.firstchar
for example 32.
FontloaderPfminfo.lastchar
for example 61440.
FontloaderPfminfo.fstype
for example 0.
FontloaderPfminfo.linegap
for example 0.
FontloaderPfminfo.vlinegap
for example 0.
FontloaderPfminfo.hhead_ascent
for example 870.
FontloaderPfminfo.hhead_descent
for example -373.
FontloaderPfminfo.os2_typoascent
The typographic ascender for this font. This field should be combined with the sTypoDescender and sTypoLineGap values to determine default line spacing. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#stypoascender
FontloaderPfminfo.os2_typodescent
The typographic descender for this font. This field should be combined with the sTypoAscender and sTypoLineGap values to determine default line spacing. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#stypodescender
FontloaderPfminfo.os2_typolinegap
The typographic line gap for this font. This field should be combined with the sTypoAscender and sTypoDescender values to determine default line spacing. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#stypolinegap
FontloaderPfminfo.os2_winascent
https://learn.microsoft.com/en-us/typography/opentype/spec/os2#uswinascent
FontloaderPfminfo.os2_windescent
https://learn.microsoft.com/en-us/typography/opentype/spec/os2#uswindescent
FontloaderPfminfo.os2_subxsize
The recommended horizontal size in font design units for subscripts for this font. Should be > 0. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysubscriptxsize
FontloaderPfminfo.os2_subysize
The recommended vertical size in font design units for subscripts for this font. Should be > 0. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysubscriptysize
FontloaderPfminfo.os2_subxoff
The recommended horizontal offset in font design units for subscripts for this font. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysubscriptxoffset
FontloaderPfminfo.os2_subyoff
The recommended vertical offset in font design units from the baseline for subscripts for this font. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysubscriptyoffset
FontloaderPfminfo.os2_supxsize
The recommended horizontal size in font design units for superscripts for this font. Should be > 0. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysuperscriptxsize
FontloaderPfminfo.os2_supysize
The recommended vertical size in font design units for superscripts for this font. Should be > 0. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysuperscriptysize
FontloaderPfminfo.os2_supxoff
The recommended horizontal offset in font design units for superscripts for this font. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysuperscriptxoffset
FontloaderPfminfo.os2_supyoff
The recommended vertical offset in font design units from the baseline for superscripts for this font. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ysuperscriptyoffset
FontloaderPfminfo.os2_strikeysize
Thickness of the strikeout stroke in font design units. Should be > 0. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ystrikeoutsize
FontloaderPfminfo.os2_strikeypos
The position of the top of the strikeout stroke relative to the baseline in font design units. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#ystrikeoutposition
FontloaderPfminfo.os2_family_class
This field provides a classification of font-family design. # https://learn.microsoft.com/en-us/typography/opentype/spec/os2#sfamilyclass
FontloaderPfminfo.os2_xheight
The height of lower case letters such as “x”
FontloaderPfminfo.os2_capheight
This metric specifies the distance between the baseline and the approximate height of uppercase letters measured in font design units. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#scapheight
FontloaderPfminfo.os2_defaultchar
This is the Unicode code point, in UTF-16 encoding, of a character that can be used for a default glyph if a requested character is not supported in the font. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#scapheight
FontloaderPfminfo.os2_breakchar
This is the Unicode code point, in UTF-16 encoding, of a character that can be used as a default break character. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#usbreakchar
FontloaderPfminfo.os2_vendor
The four character identifier for the vendor of the given typeface. https://learn.microsoft.com/en-us/typography/opentype/spec/os2#achvendid
FontloaderPfminfo.codepages
A two-number array of encoded code pages
FontloaderPfminfo.unicoderages
A four-number array of encoded unicode ranges