= Variable Fonts = //Myles Maxfield, Apple// - contain tables for each glyph - sequence of points that define each path - variable fonts allow parameterization of: - control points in glyph contours - advances (horizontal space) for each glyph - shaping information - '''basically all information specified by table''' - parameters held in a vector - grouped together into axes - e.g. weight, height, etc. - software sends a value to the font structure that generates a result based on these axes - SanFransisco only understands `weight` axis - Skia has `weight`, `width`, etc. - these axes are animatable - implemented/used via CSS - three main components - some properties already exists (`weight`, `width`, and `stretch`) which map directly onto axes (`weight`, `width`, and `slant`) - remaining axes do not currently have CSS properties, but are used by the browser - axes that are unknown to browsers - `font-variation-settings` is a sequence of key-value pairs that define custom axes and their value format - due to cascading of CSS, this property must replace the entire list (no append) - each property can have different syntax/format - prevents duplication of fonts for different features - new format will be larger than a single font, but smaller than two forms of the same font (normal and bold > new format > normal) - support for font files with this format is basically done - CSS implementation is still being worked out