Skip to content

Commit 5445af1

Browse files
TimTheBigkhaledhosny
authored andcommitted
Document all fields of RawFaceTables
1 parent 37f1b0a commit 5445af1

File tree

1 file changed

+42
-1
lines changed

1 file changed

+42
-1
lines changed

src/lib.rs

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -912,71 +912,112 @@ impl core::fmt::Debug for RawFace<'_> {
912912
///
913913
/// This allows loading font faces not only from TrueType font files,
914914
/// but from any source. Mainly used for parsing WOFF.
915-
#[allow(missing_docs)]
916915
#[allow(missing_debug_implementations)]
917916
#[derive(Clone, Default)]
918917
pub struct RawFaceTables<'a> {
919918
// Mandatory tables.
919+
/// Font Header, global information about the font, version number, creation and modification dates, revision number, and basic typographic data.
920920
pub head: &'a [u8],
921+
/// Horizontal Header, information needed to layout fonts whose characters are written horizontally.
921922
pub hhea: &'a [u8],
923+
/// Maximum Profile, establishes the memory requirements for a font.
922924
pub maxp: &'a [u8],
923925

926+
/// Bitmap data table
924927
pub bdat: Option<&'a [u8]>,
928+
/// Bitmap Location, availability of bitmaps at requested point sizes.
925929
pub bloc: Option<&'a [u8]>,
930+
/// Color Bitmap Data, used to embed color bitmap glyph data.
926931
pub cbdt: Option<&'a [u8]>,
932+
/// Color Bitmap Location, provides locators for embedded color bitmaps.
927933
pub cblc: Option<&'a [u8]>,
934+
/// Compact Font Format 1
928935
pub cff: Option<&'a [u8]>,
936+
/// Character to Glyph Mapping, maps character codes to glyph indices.
929937
pub cmap: Option<&'a [u8]>,
938+
/// Color, adds support for multi-colored glyphs.
930939
pub colr: Option<&'a [u8]>,
940+
/// Color Palette, a set of one or more color palettes.
931941
pub cpal: Option<&'a [u8]>,
942+
/// Embedded Bitmap Data, embed monochrome or grayscale bitmap glyph data.
932943
pub ebdt: Option<&'a [u8]>,
944+
/// Embedded Bitmap Location, provides embedded bitmap locators.
933945
pub eblc: Option<&'a [u8]>,
946+
/// Glyph Outline, data that defines the appearance of the glyphs.
934947
pub glyf: Option<&'a [u8]>,
948+
/// Horizontal Metrics, metric information for the horizontal layout each of the glyphs.
935949
pub hmtx: Option<&'a [u8]>,
950+
/// Kern, values that adjust the intercharacter spacing for glyphs.
936951
pub kern: Option<&'a [u8]>,
952+
/// Glyph Data Location, stores the offsets to the locations of the glyphs.
937953
pub loca: Option<&'a [u8]>,
954+
/// Font Names, human-readable names for features and settings, copyright, font names, style names, and other information.
938955
pub name: Option<&'a [u8]>,
956+
/// OS/2 Compatibility, a set of metrics that are required by Windows.
939957
pub os2: Option<&'a [u8]>,
958+
/// Glyph Name and PostScript Font, information needed to use a TrueType font on a PostScript printer.
940959
pub post: Option<&'a [u8]>,
960+
/// Extended Bitmaps, provides access to bitmap data in a standard graphics format (such as PNG, JPEG, TIFF).
941961
pub sbix: Option<&'a [u8]>,
962+
/// Style Attributes, describes design attributes that distinguish font-style variants within a font family.
942963
pub stat: Option<&'a [u8]>,
964+
/// Scalable Vector Graphics, contains SVG descriptions for some or all of the glyphs in the font.
943965
pub svg: Option<&'a [u8]>,
966+
/// Vertical Header, information needed for vertical fonts.
944967
pub vhea: Option<&'a [u8]>,
968+
/// Vertical Metrics, specifies the vertical spacing for each glyph in an AAT vertical font.
945969
pub vmtx: Option<&'a [u8]>,
970+
/// Vertical Origin, the y coordinate of a glyph’s vertical origin, this can only be used in CFF or CFF2 fonts.
946971
pub vorg: Option<&'a [u8]>,
947972

973+
/// Glyph Definition, provides various glyph properties used in OpenType Layout processing.
948974
#[cfg(feature = "opentype-layout")]
949975
pub gdef: Option<&'a [u8]>,
976+
/// Glyph Positioning, precise control over glyph placement for sophisticated text layout in each supported script.
950977
#[cfg(feature = "opentype-layout")]
951978
pub gpos: Option<&'a [u8]>,
979+
/// Glyph Substitution, provides data for substitution of glyphs for appropriate rendering of different scripts.
952980
#[cfg(feature = "opentype-layout")]
953981
pub gsub: Option<&'a [u8]>,
982+
/// Mathematical Typesetting, font-specific information necessary for math formula layout.
954983
#[cfg(feature = "opentype-layout")]
955984
pub math: Option<&'a [u8]>,
956985

986+
/// Anchor Point Table, defines anchor points.
957987
#[cfg(feature = "apple-layout")]
958988
pub ankr: Option<&'a [u8]>,
989+
/// Feature Name Table, font's text features.
959990
#[cfg(feature = "apple-layout")]
960991
pub feat: Option<&'a [u8]>,
992+
/// Kerx, extended kerning table.
961993
#[cfg(feature = "apple-layout")]
962994
pub kerx: Option<&'a [u8]>,
995+
/// Extended Glyph Metamorphosis, specifies a set of transformations that can apply to the glyphs of your font.
963996
#[cfg(feature = "apple-layout")]
964997
pub morx: Option<&'a [u8]>,
998+
/// Tracking, allows AAT fonts to adjust to normal interglyph spacing.
965999
#[cfg(feature = "apple-layout")]
9661000
pub trak: Option<&'a [u8]>,
9671001

1002+
/// Axis Variation Table, allows the font to modify the mapping between axis values and these normalized values.
9681003
#[cfg(feature = "variable-fonts")]
9691004
pub avar: Option<&'a [u8]>,
1005+
/// Compact Font Format 2
9701006
#[cfg(feature = "variable-fonts")]
9711007
pub cff2: Option<&'a [u8]>,
1008+
/// Font Variations Table, global information of which variation axes are included in the font.
9721009
#[cfg(feature = "variable-fonts")]
9731010
pub fvar: Option<&'a [u8]>,
1011+
/// Glyph Variations Table, includes all of the data required for stylizing the glyphs.
9741012
#[cfg(feature = "variable-fonts")]
9751013
pub gvar: Option<&'a [u8]>,
1014+
/// Horizontal Metrics Variations Table, used in variable fonts to provide glyph variations for horizontal glyph metrics values.
9761015
#[cfg(feature = "variable-fonts")]
9771016
pub hvar: Option<&'a [u8]>,
1017+
/// Metrics Variations Table, used in variable fonts to provide glyph variations for font-wide metric values found in other font tables.
9781018
#[cfg(feature = "variable-fonts")]
9791019
pub mvar: Option<&'a [u8]>,
1020+
/// Vertical Metrics Variations Table, used in variable fonts to provide glyph variations for vertical glyph metric values.
9801021
#[cfg(feature = "variable-fonts")]
9811022
pub vvar: Option<&'a [u8]>,
9821023
}

0 commit comments

Comments
 (0)