15

One can find the following passage on p. 27 of the microtype package documentation:

Don’t use too large a value for expansion. Font expansion is a feature that is supposed to enhance the typographic quality of your document by producing a more uniform greyness of the text block (and potentially reducing the number of necessary hyphenations). When expanding or shrinking a font too much, the effect will be turned into the opposite. Expanding the fonts by more than 2%, i.e., setting a stretch limit of more than 20, should be justified by a typographically trained eye. If you are so lucky as to be in the possession of multiple instances of a Multiple Master font, you may set expansion limits to up to 4%. [Emphasis mine]

Multiple master fonts have since been succeeded by OpenType 1.8, with the introduction of variable fonts. In contrast to ordinary fonts which come in a discrete number of weights (e.g. thin, book, regular, medium, semi-bold, bold, and black), variable fonts allow the weight to be a continuous parameter, and the same is true for other font “axes”, such as optical size and width: enter image description here

Having a variable font in hand containing weight, width, and optical size axes, how should one go about configuring microtype to take advantage of these features for font expansion/shrinking?

6
  • 4
    This list of open-source variable fonts will help anyone experimenting with possible answers to your question: v-fonts.com/licenses/open-source
    – Thérèse
    Feb 19, 2022 at 16:31
  • 2
    It’s probably too early for a canonical answer, because support for variable fonts is still a work in progress (see github.com/latex3/luaotfload/issues/120 and github.com/latex3/luaotfload/issues/209). By the way, there’s a font family with axes for weight and optical size which seems not to be listed at the site above: Piazzolla.
    – Thérèse
    Feb 21, 2022 at 11:51
  • 2
    I haven't really tested it (not least because luaotfload still has some problems with variable fonts), but for optical sizes and weights, the setup should be relatively straightforward by using thefontspec interfaces (SizeFeatures, BoldFeatures etc.), ... but since you are asking about microtype specifically (for which only the width axis would matter), I don't see a solution at the moment. ...
    – Robert
    Feb 22, 2022 at 1:23
  • 1
    -- Hans (one of the luatex mentors) once suggested to just apply expansion and then replace the expanded glyphs with those from the variable font instances. I do not believe, however, that this would work, because while pdftex/luatex expand the glyphs linearly, this is not guaranteed with variable fonts (just like with multiple master fonts, where, eg., uppercase letters will usually be expanded more than lowercase letters...). So at least for the case of microtype I doubt that variable fonts will be usable in the foreseeable future ...
    – Robert
    Feb 22, 2022 at 1:31
  • 1
    -- it either would have to be integrated into the engine itself (for pdftex, which is basically no longer developed), or the hz mechanism would have to be completely remodeled in luatex taking variable fonts into account.
    – Robert
    Feb 22, 2022 at 1:34

0

You must log in to answer this question.

Browse other questions tagged .