Old: A Beginner's Guide to Using Fonts in Mark IV

From Wiki
Revision as of 19:09, 3 June 2020 by Garulfo (talk | contribs)
Jump to navigation Jump to search

Introduction

This page describes how to use fonts (typescripts) with ConTeXt MkIV (such as ConTeXt Standalone). For a deeper understanding consult the manual on fonts or documents cited on the Fonts page (be warned: understanding how fonts work is not easy).

Note that fonts are difficult and some examples on this page do not work. In particular, LM fonts and the TeX Gyre collection.

Available Typescripts

Each typescript below defines a keyword to use with \setupbodyfont. Usually this is the same as the name of the typescript, but there is one exception: antykwa-torunska.

  • Latin Modern (typescript name: modern; this is the default font set)
  • Latin Modern variant (ts name: modernvariable; LM variable typewriter for serif)
  • Postscript (ts name: postscript; Termes for serif, Heros for sans, Cursor for mono)
  • Antykwa Toruńska (ts name: antykwa-torunska; only serif; defines antykwa as keyword for \setupbodyfont)
  • Iwona (ts name: iwona; only sans serif)
  • Iwona Light, Medium and Heavy (ts names: iwona-light, iwona-medium, iwona-heavy; only sans; the medium variant is a small bit heavier than a "regular" one)
  • Pagella (ts name: palatino; only serif)
  • Termes (ts name: times; only serif, Heros for sans)

Usage example

\usetypescript[palatino]
\setupbodyfont[palatino,18pt]

\starttext
Hello world, I'm Pagella!
\stoptext

The first line seems to order ConTeXt to "install" (for the current file) the given typescript (it accepts what I have earlier called a "typescript name"). The last one starts using it (you may omit the size if you are satisfied with the default).

Combining predefined fonts in your own typescripts

It is also possible to combine fonts from the TeX Gyre collection in your own typescripts. The example below combines Bonum (Bookman) roman, Adventor (AvantGarde) for sans serif, Cursor (Courier) for teletype, and Euler for math. The rscale=... option ensures that all fonts have the same x-height. (You can lookup the relative x-heigt of a font using fontforge.)

\starttypescript [Bonum]
    \definetypeface [Bonum] [rm] [serif] [bonum]     [default]
    \definetypeface [Bonum] [ss] [sans]  [adventor]  [default] [rscale=0.887]
    \definetypeface [Bonum] [tt] [mono]  [cursor]    [default] [rscale=1.163]
    \definetypeface [Bonum] [mm] [math]  [euler]     [default] [rscale=1.050]
\stoptypescript

\usetypescript[Bonum]
\setupbodyfont[Bonum,12pt]

\starttext
Hello world, I'm Bonum!
\stoptext

Example typescripts