Changes

Jump to navigation Jump to search
3,769 bytes removed ,  08:26, 2 July 2022
m
Text replacement - "pragma-ade.com" to "pragma-ade.nl"
* [[Use_the_fonts_of_the_distribution_(2020)]]** [[Use_the_fonts_of_the_distribution_complexe]] (to delete after)* [[Use_fonts_not_provided_by_the_distribution_(2020)]]__NOTOC__
Using fonts with TeX was once a Jedi fight, before XeTeX and LuaTeX development. Nowadays, using fonts is simple.
= Using a newly downloaded font fonts =
== Quickly use one of You will find here the styles (3 preliminary stepsbefore actually playing with the fonts in your input file.At the end, with one or two commands, 1 minyou will make your document enable to use any fonts available on your computer.) ==
Let's take a example, we want to use [https://fonts.google.com/specimen/Noto+Serif Noto Serif]. 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
; #1. Store them is a dedicated folder{{TwoColumnsHighlight|=== [[Use fonts distributed with ConTeXt| Use fonts distributed with ConTeXt]] === :* create a "Noto-serif" in How to use the [[ConTeXt distribution <code>tex/texmf-'s Fonts|21 provided fonts</code>]].:* unzip and store These are the basics you may want to start with, in 2 or 3 steps, less than 3 minutes.ttf file in | === [[Use_the_fonts_you_want| Use any other font ]] === * Case 1: Quick "one shot" (<code>tex/texmf-fonts/Noto-serif/</code>5min.)* Case 2: Comprehensive approach (~10min.)}}
; #2. Regenerate ConTeXt databases
:* the file database: <code>mtxrun --generate</code>
:* the fonts database: <code>mtxrun --script font --reload</code>
:* and check the situation <code>mtxrun --script font --list --file -pattern=*noto*</code>:
<texcode>familyname weight style width variant fontname filename subfont fontweight
notoserif bold normal normal normal notoserifbold NotoSerif-Bold.ttfThe actual use of fonts within your document is detailed in '''[[Font Switching]]''':* how to define font size, notoserif * how to use alternative styles like regular / bold / italic normal normal notoserifbolditalic NotoSerif-BoldItalic/ small caps* how to switch between serif, sans serif, monospaced, or to another fonts with {{cmd|switchtobodyfont}}* how to underline, strike.ttfnotoserif normal italic normal normal notoserifitalic NotoSerif-Italic.ttfnotoserif normal normal normal normal notoserif NotoSerif-Regular.ttf</texcode>
; #3. Your are done! You can use the font anywhere on in your input files.:* Use the commands {{cmd|definedfont}}<texcode>\definedfont[file:NotoSerif-BoldItalic at 12pt]The quick brown fox jumps over the lazy dog</texcode>[[File:result_of_test_with_noto-serif_one.png]]= Advanced stuff =
== Use all the styles (3 steps, 1 min.) The Manuals ==
; #1* [http://www.pragma-ade.nl/general/manuals/fonts-mkiv.pdf 2016 Fonts manual, all the details] for advanced users* [http://context.aanhet.net/svn/contextman/context-reference/en/co-fonts. Define them pdf the 2013 font chapter] as a new typescript (ConTeXt vocabulary) in your input file.separate document* [http:* Use the commands //pmrb.free.fr/contextref.pdf#&#91;145,{{cmd|starttypescript%22name%22:%22Fit%22}} and {{cmd|definefontsynonym}} to declare&#93; 2013 reference manual] never officially released, with the 2013 font chapter
<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>== Deep dive into typescripts ==
; #2* [[Typescripts examples]] look at the existing examples to build your own Typescripts. Define them as part * [[Featuresets]], and here some of your font familycommon option for {{cmd|definefontfeature}}** <code>onum=yes</code> for old style numbers, here as a romanvs <code>lnum=yes</code> for lining numbers** <code>kern=yes<texcode/code>for kerning\definefontfamily ** See [MyFontIdentifier[Ligatures] ] (2017). <code>liga=yes</code> for common ligature and <code>dlig=yes</code> for discretionary ligature (like st), <code>calt=yes</code> for contextual alternates. ** for small caps, the font must propose Caps variation like "EBGaramondSC12-Regular.otf" et "AlegreyaSC-Regular.otf"** [rmhttps://helpx.adobe.com/fonts/using/open-type-syntax.html Syntax for OpenType features] from Adobe* [notoserif[Fontsize|What defines the size in a font?]] (2019)* [[Optical Size|How to set up a font family with optical size options]]</texcode>* [[Protrusion]] (also known as hanging or font handling) is a more subtle typographic effect (2012 need update).
; #3* [https://source. You are done! Finallycontextgarden.net/?search=s-fonts- the source browser] for s-fonts- files, we have the following input file:that a user can run (to get an example) or use as module for own fonts * Lua Font Goodies with examples.
<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 Finally, for older content, refering to mkii, we keep a [MyFontIdentifier[Fonts - Old Content|specific zone in the wiki]] . Work is also need to merge content of [[rmFonts_in_LuaTeX] [notoserif]here.
\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]].
 
There are any ready to go typpescript file, tex/texmf-context/tex/context/fonts/mkiv/ for example :
* Included
** DejaVu with \setupbodyfont[dejavu] or condensed version with \setupbodyfont[dejavu-condensed]
** Gentium with \setupbodyfont[gentium]
** Iwona with \setupbodyfont[iwona]
** Kurier with \setupbodyfont[kurier]
** Latin Modern with \setupbodyfont[latinmodern]
** Gentium with \setupbodyfont[gentium]
* Non included
** Sabon MT with \setupbodyfont[sabon]
** Cambria with \setupbodyfont[cambria]
** Garamond with \setupbodyfont[ebgaramond]
** Zapfino MT with \setupbodyfont[zapfino]
** Optima Nova with \setupbodyfont[optima-nova], or \setupbodyfont[optima-nova-light] \setupbodyfont[optima-nova-medium]
** Palatino Nova with \setupbodyfont[palatino-nova], or \setupbodyfont[palatino-nova-light] \setupbodyfont[palatino-nova-medium], and \setupbodyfont[palatino-sans] \setupbodyfont[palatino-informal]
** Liberation with \setupbodyfont[liberation]
** Libertine with \setupbodyfont[liberatine]
** Lucida with \setupbodyfont[lucida-opentype] OR \setupbodyfont[lucida]
** Minion with \setupbodyfont[minion]
** MacOSx default: baskerville, gillsans, futura, helvetica-neue and -ultralight, -light, -boldcondensed, ...
** IMB plex :
*** plex, -thin, -extralight, -light, -text, -medium, -semibold, -bold
*** ibmplexnarrow, -thin, -extralight, -light
 
 
 
 
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
 
Style, see the font chapter, of the never really issued Reference Manual:
* [http://pmrb.free.fr/contextref.pdf#&#91;145,{%22name%22:%22Fit%22}&#93; in the whole manual]
* [http://context.aanhet.net/svn/contextman/context-reference/en/co-fonts.pdf#&#91;3,{%22name%22:%22Fit%22}&#93; as a separate document] section "Simple font definitions"
 
== 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.
 
 
weight light, regular, medium, bold, extra...
width : condensed, Semi Condensed , regular, Semi Extended , Extended
shape : regular, italic
caps : regular, smallcaps
 
= Liens =
 
* [[Style_and_Color_Parameters]]
* {{cmd|definefontfamily}}
* {{cmd|definedfont}}
I just have realised that \definefont requires fontname of font not identifier neither familyname.
 
https://source.contextgarden.net/tex/context/fonts/mkiv
 
{{todo|naming conventions for definefontssymonym ?}}
{{todo[[Category:How to use font from your system.}}Fonts]]

Navigation menu