Difference between revisions of "Fonts"

From Wiki
Jump to navigation Jump to search
 
(237 intermediate revisions by 5 users not shown)
Line 1: Line 1:
= How to use one of the provided fonts: 4 steps, 10 sec. =
+
{| class="wikitable" style="margin:auto; width: 100%;"
 +
|-
 +
! style="width: 50%"| Tutorials (learning)
 +
! style="width: 50%"| How-to guides (goals)
 +
|-
 +
|
 +
* [https://meeting.contextgarden.net/2021/talks/2021-09-23/typescripts-presentation.pdf ''Handling fonts in ConTEXt (2021)''] ConTEXt-Meeting 15th, 2021, Willi Egger, 38 invaluable slides
 +
* [https://articles.contextgarden.net/journal/2018/83-94.pdf <i>Font installation example: IBM Plex (2018)</i>] by Taco Hoekwater and Pavneet Arora
 +
|
  
; #1. First, be aware of the [[ConTeXt distribution's Fonts|21 fonts provided]].
+
* See below on this [[Fonts#How-to_guides|Fonts central page]]
:* If required, you can [[Mtxrun#fonts| regenerate the font database]] <code>mtxrun --script font --reload --force</code>
+
* [[:Category:Fonts | Wiki pages in Fonts category]]
 
+
|-
; #2. Give a name to the set of fonts you want to use and select a first font
+
! Explanation (understanding) !! Reference (information)
:* Use the command {{cmd|definefontfamily}}. Sometimes, the name of the set of font is called the "typescript identifier"
+
|-
:* 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][refcode to 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>
 
 
 
 
 
== Example ==
 
{{TwoColumnsUnderLevel1
 
|
 
This basic input is typeset with the default font, Latin Modern:
 
<context source=yes>
 
\setupbodyfont[12pt]
 
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:
+
* [http://www.pragma-ade.nl/general/manuals/fonts-mkiv.pdf 2016 Fonts manual, all the details] for advanced users
<context source=yes>
+
* [http://context.aanhet.net/svn/contextman/context-reference/en/co-fonts.pdf the 2013 font chapter] as a separate document
\definefontfamily [MyFontIdentifier] [rm] [texgyrepagella]
+
* [http://pmrb.free.fr/contextref.pdf#&#91;145,{%22name%22:%22Fit%22}&#93; 2013 reference manual] never officially released, with the 2013 font chapter
\setupbodyfont[MyFontIdentifier]
+
|
\setupbodyfont[12pt]
+
The [[:Category:Command/Fonts | commands in Fonts category]]
The quick brown fox jumps over the lazy dog
+
|-
</context>
+
|}
}}
 
  
 +
= How-to guides =
  
= How to use more than one of the provided fonts: 1 step, 5 sec. =
+
* '''[[Fonts/Use fonts distributed with ConTeXt| Use fonts distributed with ConTeXt]]'''
 +
** How to use the [[Fonts/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.
 +
* '''[[Fonts/Use_the_fonts_you_want| Use any other font ]]'''
 +
** Case 1: Quick "one shot" (< 5min.)
 +
** Case 2: Comprehensive approach (~10min.)
 +
* '''[[Fonts/Font Switching| "Font Switching", or "how-to use the different fonts within your document"]]'''
 +
** 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...
 +
* '''[[Visual_Debugging#Fonts_and_Type | Visual help and debugging]]''' for Fonts
 +
* '''[[Fonts/Featuresets|OpenType features]]''' for some common options for {{cmd|definefontfeature}} like:
 +
** '''[[Fonts/Ligatures|Ligatures]]'''
 +
** '''[[Fonts/Protrusion]]''' (also known as hanging or font handling)
 +
* '''[[Fonts/Typescripts examples|Typescripts examples]]'''
 +
* Technical details
 +
** [[Fonts/Optical Size | How to set up a font family with optical size options]]
 +
** [[Fonts/Fontsize | What defines the size in a font]] ('natural' size. 'design' size)
 +
** Get examples from [https://source.contextgarden.net/?search=s-fonts- s-fonts- files], that you can compile and/or use as module for own fonts (with lua font goodies)
  
; #1. Very similarly to above, just select a second font
+
== To tidy ==
:* 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>
 
  
 +
* Work is also needed to merge content from [[Fonts/Fonts_in_LuaTeX| Fonts in LuaTeX]] in the pages above.
 +
* For older content, refering to mkii, we keep a [[Fonts - Old Content|specific zone in the wiki]].
  
== Example ==
+
[[Category:Fonts]]
{{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\\
 
\ss The quick brown fox jumps over the lazy dog\\
 
\tt The quick brown fox jumps over the lazy dog\\
 
\bf
 
\rm The quick brown fox jumps over the lazy dog\\
 
\ss The quick brown fox jumps over the lazy dog\\
 
\tt The quick brown fox jumps over the lazy dog\\
 
\it
 
\rm The quick brown fox jumps over the lazy dog\\
 
\ss The quick brown fox jumps over the lazy dog\\
 
\tt 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\\
 
\ss The quick brown fox jumps over the lazy dog\\
 
\tt The quick brown fox jumps over the lazy dog\\
 
\bf
 
\rm The quick brown fox jumps over the lazy dog\\
 
\ss The quick brown fox jumps over the lazy dog\\
 
\tt The quick brown fox jumps over the lazy dog\\
 
\it
 
\rm The quick brown fox jumps over the lazy dog\\
 
\ss The quick brown fox jumps over the lazy dog\\
 
\tt The quick brown fox jumps over the lazy dog\\
 
</context>
 
}}
 

Latest revision as of 13:01, 18 May 2024

Tutorials (learning) How-to guides (goals)
Explanation (understanding) Reference (information)

The commands in Fonts category

How-to guides

To tidy