Fonts
Revision as of 21:01, 31 May 2020 by Garulfo (talk | contribs) (→How to use my new font: 6 steps, 3 minutes)
How to use one of the provided fonts: 4 steps, 10 sec.
- #1. First, be aware of the 21 fonts provided and their "nickname".
-
- If required, you can regenerate the font database
mtxrun --script font --reload --force
- If required, you can regenerate the font database
- #2. Give a name to the set of fonts you want to use and select a first font
-
- Use the command \definefontfamily.
- Let's take an example, for a Serif font, for which TeX practice is to refer to them as roman (=rm)
\definefontfamily[MyFontIdentifier][rm][nickname of the serif font]
- #3. Declare it as your default font family for your document
-
- Use the command with \setupbodyfont
\setupbodyfont[MyFontIdentifier]
- #4. Specify the font size
-
\setupbodyfont[xxpt]
To learn how to use different alternative styles of a given font, like regular / bold / italic, see the Font_Switching in the Basics.
Example
-
Let see what give the defaults:
\setupbodyfont[12pt] {The quick brown fox jumps over the lazy dog}\\ {\bf The quick brown fox jumps over the lazy dog}\\ {\it The quick brown fox jumps over the lazy dog}\\
-
And let's add the two lines, using Tex Gyre Pagella Serif font (ref:texgyrepagella):
\definefontfamily [MyFontIdentifier] [rm] [texgyrepagella] \setupbodyfont[MyFontIdentifier] \setupbodyfont[12pt] {The quick brown fox jumps over the lazy dog}\\ {\bf The quick brown fox jumps over the lazy dog}\\ {\it The quick brown fox jumps over the lazy dog}\\
How to use more than one of the provided fonts: 1 step, 5 sec.
- #1. Very similarly to above, just select a second font
-
- for a Sans Serif font, for which TeX practice is to refer to them as Sans Serif (=ss)
\definefontfamily[MyFontIdentifier][ss][refcode to the sans serif font]
- for a monospaced font, for which TeX practice is to refer to them as TypewriTer (=tt)
\definefontfamily[MyFontIdentifier][tt][refcode to the monospaced font]
Example
-
This basic input is typeset with the default font, Latin Modern:
\setupbodyfont[12pt] {\rm The quick brown fox jumps over the lazy dog}\\ {\rm\bf The quick brown fox jumps over the lazy dog}\\ {\rm\it The quick brown fox jumps over the lazy dog}\\ \\ {\ss The quick brown fox jumps over the lazy dog}\\ {\ss\bf The quick brown fox jumps over the lazy dog}\\ {\ss\it The quick brown fox jumps over the lazy dog}\\ \\ {\tt The quick brown fox jumps over the lazy dog}\\ {\tt\bf The quick brown fox jumps over the lazy dog}\\ {\tt\it The quick brown fox jumps over the lazy dog}\\
-
And by adding the two lines discussed above, and using the reference to Tex Gyre Pagella Serif font (texgyrepagella) we obtain:
\definefontfamily [MyFontIdentifier] [rm] [texgyrepagella] \definefontfamily [MyFontIdentifier] [ss] [texgyreadventor] \definefontfamily [MyFontIdentifier] [tt] [texgyrecursor] \setupbodyfont[MyFontIdentifier] \setupbodyfont[12pt] {\rm The quick brown fox jumps over the lazy dog}\\ {\rm\bf The quick brown fox jumps over the lazy dog}\\ {\rm\it The quick brown fox jumps over the lazy dog}\\ \\ {\ss The quick brown fox jumps over the lazy dog}\\ {\ss\bf The quick brown fox jumps over the lazy dog}\\ {\ss\it The quick brown fox jumps over the lazy dog}\\ \\ {\tt The quick brown fox jumps over the lazy dog}\\ {\tt\bf The quick brown fox jumps over the lazy dog}\\ {\tt\it The quick brown fox jumps over the lazy dog}\\
How to use my new font: 6 steps, 3 minutes
Let's take a example, we want to use Noto Serif.
- #1. Download
-
- The google website enable us to download a zip file with the 4 alternative styles:
- Regular 400
- Regular 400 italic
- Bold 700
- Bold 700 italic
- The google website enable us to download a zip file with the 4 alternative styles:
- #2. Store them is a dedicated folder
-
- create a "Noto-serif" in the ConTeXt distribution
tex/texmf-fonts
. - unzip and store the .ttf file in
tex/texmf-fonts/Noto-serif/
.
- create a "Noto-serif" in the ConTeXt distribution
- #3. Regenerate ConTeXt databases
-
- the file database:
mtxrun --generate
- the fonts database:
mtxrun --script font --reload
- the file database:
- #4. Check if the 4 files are identified by ConTeXt now
-
mtxrun --script font --list --file -pattern=*noto*
- #5. Define them as a new typescript (ConTeXt vocabulary) in your input file.
-
- Use the commands \starttypescript and \definefontsynonym to declare
\starttypescript [serif] [notoserif] \definefontsynonym[NotoSerif-Regular] [file:NotoSerif-Regular] \definefontsynonym[NotoSerif-Italic] [file:NotoSerif-Italic] \definefontsynonym[NotoSerif-Bold] [file:NotoSerif-Bold] \definefontsynonym[NotoSerif-BoldItalic] [file:NotoSerif-BoldItalic] \stoptypescript
- #6. Define them as part of your font family, here as a roman
\definefontfamily [MyFontIdentifier] [rm] [notoserif]
Finally, we have:
\starttypescript [serif] [notoserif] \definefontsynonym[NotoSerif-Regular] [file:NotoSerif-Regular] \definefontsynonym[NotoSerif-Italic] [file:NotoSerif-Italic] \definefontsynonym[NotoSerif-Bold] [file:NotoSerif-Bold] \definefontsynonym[NotoSerif-BoldItalic] [file:NotoSerif-BoldItalic] \stoptypescript \definefontfamily [MyFontIdentifier] [rm] [notoserif] \setupbodyfont[MyFontIdentifier] \setupbodyfont[12pt] {\rm The quick brown fox jumps over the lazy dog}\\ {\rm\bf The quick brown fox jumps over the lazy dog}\\ {\rm\it The quick brown fox jumps over the lazy dog}\\
And it gives:
Next ?
You want to play with bigger set of font ?
For example, how to use the 7 weights of Noto Serif SC ?
- Extra-light 200
- Light 300
- Regular 400
- Medium 500
- Semi-bold 600
- Bold 700
- Black 900
You have to define specific name like
- \starttypescript [serif] [notoserifsc-extralight]
- \starttypescript [serif] [notoserifsc-light]
- \starttypescript [serif] [notoserifsc]
- \starttypescript [serif] [notoserifmedium]
You have to define "definefontfallback"
A quite complete example: Alegreya_Typescript
And to swith during
I want IBM Plex
- Sans — Thin
- Sans — Thin Italic
- Sans — Regular
- Sans — Regular Italic
- Sans — Bold
- Sans — Bold Italic
- Sans Condensed — Regular
- Sans Condensed — Regular Italic
- Serif — Regular
- Serif — Regular Italic
- Mono — Regular
- Mono — Regular Italic
Already prepared typescript files
I just want to use fonts of my system
I want use specific features
- Small caps
- Ligatures
- Kerning
- expansion=quality
- protrusion=quality,
- other: tlig, ccmp, fonts-mkiv.pdf page 65.
|
TODO: naming conventions for definefontssymonym ? (See: To-Do List) |