Notes on fonts
Here are some notes on Free and high-quality typesetting of fonts.
Rendering
Console
- Bitmap rendering to exact target (i.e. unscaled).
Screen
- Fewer details like tiny twists in serifs.
- Low variation in thickness of stem.
- Less complexity.
print
formats
For console use,
common font formats are PCF and BDF.
For screen and print,
common font formats are Postscript type 1 and Truetype.
Both can be of high quality, both can fail for some applications.
Opentype is a modern container for Truetype or Postscript font data,
and additional data.
Some applications treat Opentype like Truetype
(i.e. fail on Opentype-encoded Postscript fonts).
Some applications ignore or misinterpret some Opentype data,
including [localized name][] and [alphanumeric ID][].
[localized names]:
"some encodings of Noto Sans CJK contain 'locl' hints"
[alphanumeric ID][]: https://tex.stackexchange.com/questions/89352
"recent Gentium Plus uses alphanumeric identifiers, failing on XeTeX"
Naming
XLFD
Xorg natively uses "X Logical Font Description" (XLFD) as naming scheme.
Available fonts can be probed with xlsfonts
,
and browsed interactively with xfontsel
.
Freetype
Freetype uses its own naming scheme.
Coverage
Style
Families and friends
Print recommendations and web font stacks favoring Free alternatives.
Slab serif
Slab serif (a.k.a. square serif, Antique or Egyptienne)
Charis SIL has full [Microtype][] support
:: Charis SIL, Bitstream Charter, Serif
- Universalis, Futura, Trebuchet MS, Arial, sans-serif
Application issues
LaTeX
[Microtype][]
"Microtype is a LaTeX package to tune alignment of letters and words.
LaTeX engines PdfTeX, LuaTeX and XeTeX are all supported, but some
features only with PdfTeX, and only (without custom hinting) for a
few common fonts."
Scribus
OpenType fonts without "kern" table
(CFF a.k.a. Postscript Type 2, and maybe also some SFNT fonts?)
were typeset without kerning support until 1.4.0.svn rev. 16365
(i.e. before 2011-02-16).
Simple test: Check that characters overlap typeseetting string "AVATo".
Upstream bug: http://bugs.scribus.net/view.php?id=7910
Maybe switching between fonts with same id/name
but different type (Type1/TrueType/Opentype-CFF/Opentype-SFNT)
confuses PDF export handling of fonts to embed.
Possible workaround is Preferences→Fonts→Defaults.
Scribus PDF export supports no newer PDF version than 1.5,
which does support embedding Opentype fonts
(requires version 1.6+).
Font stacks
/* Times New Roman-based stack */
font-family: Cambria, "Hoefler Text", Utopia, "Liberation Serif", "Nimbus Roman No9 L Regular", Times, "Times New Roman", serif;
/* Modern Georgia-based serif stack */
font-family: Constantia, "Lucida Bright", Lucidabright, "Lucida Serif", Lucida, "DejaVu Serif", "Bitstream Vera Serif", "Liberation Serif", Georgia, serif;
/* Traditional Garamond-based serif stack */
font-family: "Palatino Linotype", Palatino, Palladio, "URW Palladio L", "Book Antiqua", Baskerville, "Bookman Old Style", "Bitstream Charter", "Nimbus Roman No9 L", Garamond, "Apple Garamond", "ITC Garamond Narrow", "New Century Schoolbook", "Century Schoolbook", "Century Schoolbook L", Georgia, serif;
/* Helvetica/Arial-based sans serif stack */
font-family: Frutiger, "Frutiger Linotype", Univers, Calibri, "Gill Sans", "Gill Sans MT", "Myriad Pro", Myriad, "DejaVu Sans Condensed", "Liberation Sans", "Nimbus Sans L", Tahoma, Geneva, "Helvetica Neue", Helvetica, Arial, sans-serif;
/* Verdana-based sans serif stack */
font-family: Corbel, "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", "DejaVu Sans", "Bitstream Vera Sans", "Liberation Sans", Verdana, "Verdana Ref", sans-serif;
/* Trebuchet-based sans serif stack */
font-family: "Segoe UI", Candara, "Bitstream Vera Sans", "DejaVu Sans", "Bitstream Vera Sans", "Trebuchet MS", Verdana, "Verdana Ref", sans-serif;
/* Impact-based sans serif stack */
font-family: Impact, Haettenschweiler, "Franklin Gothic Bold", Charcoal, "Helvetica Inserat", "Bitstream Vera Sans Bold", "Arial Black", sans-serif;
/* Monospace stack */
font-family: Consolas, "Andale Mono WT", "Andale Mono", "Lucida Console", "Lucida Sans Typewriter", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", "Liberation Mono", "Nimbus Mono L", Monaco, "Courier New", Courier, monospace;