Difference between revisions of "Fonts"

From Wiki
Jump to navigation Jump to search
m (Text replacement - "pragma-ade.com" to "pragma-ade.nl")
 
(118 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{ThreeColumnsHighlight
+
__NOTOC__
|
 
=== [[Use_the_fonts_of_the_distribution_(2020)]] ===
 
|
 
=== [[Use_fonts_not_provided_by_the_distribution_(2020)]]===
 
|
 
=== More advanced stuff ===
 
}}
 
  
 +
Using fonts with TeX was once a Jedi fight, before XeTeX and LuaTeX development. Nowadays, using fonts is simple.
  
== You want to play with bigger set of font ? ==
+
= Using fonts =  
  
For example, how to use the 7 weights of Noto Serif SC ?
+
You will find here the preliminary steps before actually playing with the fonts in your input file.
* Extra-light 200
+
At the end, with one or two commands, you will make your document enable to use any fonts available on your computer.
* 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
 
  
  
 +
{{TwoColumnsHighlight
 +
|
 +
=== [[Use fonts distributed with ConTeXt| Use fonts distributed with ConTeXt]] ===
 +
* How to use the [[ConTeXt distribution's Fonts|21 provided fonts]].
 +
* These are the basics you may want to start with, in 2 or 3 steps, less than 3 minutes.
 +
|
 +
=== [[Use_the_fonts_you_want| Use any other font ]] ===
 +
* Case 1: Quick "one shot" (< 5min.)
 +
* Case 2: Comprehensive approach (~10min.)
 +
}}
  
  
You have to define "definefontfallback"
+
The actual use of fonts within your document is detailed in '''[[Font Switching]]''':
 +
* how to define font size,
 +
* how to use alternative styles like regular / bold / italic / small caps
 +
* how to switch between serif, sans serif, monospaced, or to another fonts with {{cmd|switchtobodyfont}}
 +
* how to underline, strike...
  
A quite complete example: [[Alegreya_Typescript]]
+
= Advanced stuff =
  
And to swith during
+
== The Manuals ==
  
I want IBM Plex
+
* [http://www.pragma-ade.nl/general/manuals/fonts-mkiv.pdf 2016 Fonts manual, all the details] for advanced users
* Sans — Thin
+
* [http://context.aanhet.net/svn/contextman/context-reference/en/co-fonts.pdf the 2013 font chapter] as a separate document
* Sans — Thin Italic
+
* [http://pmrb.free.fr/contextref.pdf#&#91;145,{%22name%22:%22Fit%22}&#93; 2013 reference manual] never officially released, with the 2013 font chapter
* 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:
+
== Deep dive into typescripts ==
* [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 ==
+
* [[Typescripts examples]] look at the existing examples to build your own Typescripts.
 +
* [[Featuresets]], and here some of common option for {{cmd|definefontfeature}}
 +
** <code>onum=yes</code> for old style numbers, vs <code>lnum=yes</code> for lining numbers
 +
** <code>kern=yes</code> for kerning
 +
** See [[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"
 +
** [https://helpx.adobe.com/fonts/using/open-type-syntax.html Syntax for OpenType features] from Adobe
 +
* [[Fontsize|What defines the size in a font?]] (2019)
 +
* [[Optical Size|How to set up a font family with optical size options]]
 +
* [[Protrusion]] (also known as hanging or font handling) is a more subtle typographic effect  (2012 need update).
  
== I just want to use fonts of my system ==
+
* [https://source.contextgarden.net/?search=s-fonts- the source browser] for s-fonts- files, that a user can run (to get an example) or use as module for own fonts  
 +
* Lua Font Goodies with examples.
  
== I want use specific features ==
 
  
* Small caps
+
Finally, for older content, refering to mkii, we keep a [[Fonts - Old Content|specific zone in the wiki]]. Work is also need to merge content of [[Fonts_in_LuaTeX]] here.
* 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|definefontfamily}}
 
* {{cmd|definedfont}}
 
* {{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:How to use font from your system.}}
+
[[Category:Fonts]]

Latest revision as of 08:26, 2 July 2022


Using fonts with TeX was once a Jedi fight, before XeTeX and LuaTeX development. Nowadays, using fonts is simple.

Using fonts

You will find here the preliminary steps before actually playing with the fonts in your input file. At the end, with one or two commands, you will make your document enable to use any fonts available on your computer.



The actual use of fonts within your document is detailed in Font Switching:

  • how to define font size,
  • how to use alternative styles like regular / bold / italic / small caps
  • how to switch between serif, sans serif, monospaced, or to another fonts with \switchtobodyfont
  • how to underline, strike...

Advanced stuff

The Manuals

Deep dive into typescripts

  • the source browser for s-fonts- files, that a user can run (to get an example) or use as module for own fonts
  • Lua Font Goodies with examples.


Finally, for older content, refering to mkii, we keep a specific zone in the wiki. Work is also need to merge content of Fonts_in_LuaTeX here.