Changes

Jump to navigation Jump to search
7,694 bytes added ,  21:09, 31 May 2020
= How to use one of the provided fonts: 4 steps, 10 sec. =
; #1. First, be aware of the [[ConTeXt distribution's Fonts|21 fonts provided]]and their "nickname".:* If required, you can [[Mtxrun#fonts| regenerate the font database]] <code>mtxrun --script font --reload --force</code> ; #2. Give a name to the set of fonts you want to use and select a first font:* Use the command {{cmd|definefontfamily}}.:* Let's take an example, for a Serif font, for which TeX practice is to refer to them as '''roman''' (=rm):* <texcode>\definefontfamily[MyFontIdentifier][rm][nickname of the serif font]</texcode> ; #3. Declare it as your default font family for your document:* Use the command with {{cmd|setupbodyfont}}:* <texcode>\setupbodyfont[MyFontIdentifier]</texcode> ; #4. Specify the font size:* <texcode>\setupbodyfont[xxpt]</texcode> To learn how to use different alternative styles of a given font, like regular / bold / italic, see the [[Font_Switching]] in the [[Basics]]. == Example =={{TwoColumnsUnderLevel1|Let see what give the defaults:<context source=yes>\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}\\</context>|And let's add the two lines, using Tex Gyre Pagella Serif font (ref:texgyrepagella):<context source=yes>\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}\\</context>}} = How to use more than one of the provided fonts: 1 step, 5 sec. = ; #1. Very similarly to above, just add more font in your font family. :* for a Sans Serif font, for which TeX practice is to refer to them as '''Sans Serif''' (=ss):* <texcode>\definefontfamily[MyFontIdentifier][ss][refcode to the sans serif font]</texcode>:* for a monospaced font, for which TeX practice is to refer to them as '''TypewriTer''' (=tt):* <texcode>\definefontfamily[MyFontIdentifier][tt][refcode to the monospaced font]</texcode>:* for a math font, for which TeX practice is to refer to them as '''MatheMatics''' (=mm):* <texcode>\definefontfamily[MyFontIdentifier][mm][refcode to the math font]</texcode>:* the limit is that in TeX practice, we only have one roman, one sans serif, per font family.:* in order to use more (like variation condensed, extralight etc...) we have to define other font family (MyFontIdentifier-condensed, MyFontIdentifier-light) == Example =={{TwoColumnsUnderLevel1|This basic input is typeset with the default font, Latin Modern:<context source=yes>\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}\\</context>|And by adding the two lines discussed above, and using the reference to Tex Gyre Pagella Serif font (texgyrepagella) we obtain:<context source=yes>\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}\\</context>}} = How to use my new font: 6 steps, 3 minutes = Let's take a example, we want to use [https://fonts.google.com/specimen/Noto+Serif 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 ; #2. Store them is a dedicated folder:* create a "Noto-serif" in the ConTeXt distribution <code>tex/texmf-fonts</code>.:* unzip and store the .ttf file in <code>tex/texmf-fonts/Noto-serif/</code>. ; #3. Regenerate ConTeXt databases:* the file database: <code>mtxrun --generate</code>:* the fonts database: <code>mtxrun --script font --reload</code> ; #4. Check if the 4 files are identified by ConTeXt now::* <code>mtxrun --script font --list --file -pattern=*noto*</code> ; #5. Define them as a new typescript (ConTeXt vocabulary) in your input file.:* Use the commands {{cmd|starttypescript}} and {{cmd|definefontsynonym}} to declare <texcode>\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</texcode> ; #6. Define them as part of your font family, here as a roman<texcode>\definefontfamily [MyFontIdentifier] [rm] [notoserif]</texcode>  Finally, we have: <texcode>\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}\\</texcode> And it gives: [[File:result_of_test_with_noto-serif.png]] = 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] [notoserifscextralight]* \starttypescript [serif] [notoserifsclight]* \starttypescript [serif] [notoserifscreg]* \starttypescript [serif] [notoserifscmed] and you will switch between each other with \switchtobodyfont[notoserifscxxx] like it's done [[ConTeXt_distribution's_Fonts#Overview| for this example of the available fonts]].  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 ?}} {{todo:How to use font from your system.}}

Navigation menu