Difference between revisions of "Fonts - Old Content"

From Wiki
Jump to navigation Jump to search
(93 intermediate revisions by 40 users not shown)
Line 1: Line 1:
< [[Visuals]]
+
< [[Basics#Basics_of_ConTeXt_text_formatting|Text formatting]] | [[Symbols]] | [[Languages]] >
  
Font handling in ConTeXt is &ldquo;strange&rdquo; for LaTeX users. It's a system of abstraction and aliases, complex and mighty&nbsp;&hellip; But there's help:
+
= How to use fonts in ConTeXt =
 +
'''The ConTeXt way of handling fonts are [[TypeScripts]].''' It’s a system of abstraction and aliases, which may seem “strange” at first for new users of ConTeXt.
 +
* If it fits your needs, consider first to use the former [[Simplefonts]] module, now in the core as {{src|font-sel.mkvi}}.
 +
* There is now a [http://context.aanhet.net/svn/contextman/context-reference/en/co-fonts.pdf manual chapter on fonts].
 +
* If you happen to use [[XeTeX]] then you can forget almost all the magic and start using your system fonts (see [[Fonts_in_XeTeX]]).
 +
* If you use [[LuaTeX]], see [[Fonts_in_LuaTeX]]
 +
* If you want to keep using [[pdfTeX]], read on.
 +
 
 +
Specific page deals with
 +
* [[Fontsize|What defines the size in a font?]]
 +
* [[Optical Size]]
 +
* [[Ligatures]]
 +
 
 +
= Font support & configuration =
 +
== Type 1 fonts ==
 +
 
 +
Type 1 fonts come in multiple files. The various components are:
 +
 
 +
* '''.pfb''': "Printer Font, Binary".
 +
* '''.pfa''': "Printer Font, ASCII".
 +
* '''.pfm''': "Printer Font Metrics", binary.
 +
* '''.afm''': "Adobe Font Metrics".
 +
 
 +
Typically each font will have a set of outlines in a pfb or pfa file, and a set of metrics in a pfm or afm file.
 +
 
 +
Which file variations are preferred depends on platform. Linux prefers pfa and afm (the ASCII versions). Windows prefers pfb and pfm (the binary versions). Mac OS X prefers pfm and afm.
 +
 
 +
On the Mac, you may encounter old-style PostScript Type 1 fonts which have an extensionless file containing the font outlines. These are a relic from the days when bitmaps were used to display fonts on screen, and the PostScript was downloaded to the printer. Your best bet is to throw them away and get an up-to-date OpenType version, or use a font editing utility such as fontforge to convert them.
 +
 
 +
On Windows 7, the OS will identify only the .pfm file as the actual font. However, when you install the font, Windows invisibly locates the matching .pfb file from the same directory, and copies them both to the C:\Windows\Fonts directory.
 +
 
 +
* Using [[psnfss]] metrics in ConTeXt
 +
* Matt Gushee's introduction to [http://matt.gushee.net/doc/tex/bookfonts.html virtual fonts], especially for getting expert fonts to work.
 +
* [[URW Garamond]]
 +
* [[Lucida]] : large font family designed by Bigelow & Holmes; suitable e.g. for presentations
 +
* [http://dl.contextgarden.net/myway/expertfonts.pdf Installing Expert Fonts: Minion Pro] by Idris Samawi Hamid; contains step-by-step instructions, from preinstallation to writing typescripts
 +
* [http://www.stormtype.com Storm Type Foundry] : [http://modules.contextgarden.net/stormfontsupport support] of selected fonts
 +
 
 +
== True Type fonts ==
 +
* [http://tug.org/pracjourn/2005-2/schmitz/schmitz.pdf Integrating TrueType Fonts into ConTeXt] by Thomas A. Schmitz (PracTeX Journal)
 +
* [[Installing a TrueType font, step by step]]. If you just need to install a TrueType font, this may be what you are looking for.
 +
* [[Palatino Linotype under MKIV]].
 +
 
 +
== OpenType fonts ==
 +
* [[otfinstall|otfinst - a script for using OpenType fonts in ConTeXt]]
 +
 
 +
== Basic Hints ==
 +
 
 +
How to change to Palatino for text with Euler for math: [[Palatino with Euler for Math]]
 +
 
 +
''Some hints by Taco from the mailing list on 2005-11-20:''
 +
 
 +
Q: How up to date or out of date is the information in [http://www.pragma-ade.com/general/manuals/mfonts.pdf mfonts manual]?
 +
 
 +
A: It looks like it is still quite up-to-date, but some of the examples it gives may no longer be the very best and latest way of doing things, and possibly there are some new developments that do not get as much attention as desired (like [http://www.pragma-ade.com/general/manuals/mtexfont.pdf texfont], and the issues arising from font map files). Overall, the document appears accurate, though.
 +
 
 +
An important thing to remember is this:
 +
 
 +
'''ConTeXt does not share font metric conventions with LaTeX.'''
 +
 
 +
(at one point it started doing so, like supporting the ''Karl Berry naming scheme'' and the ''PSNFSS'' style font family names, but that has since been abandoned).
 +
 
 +
Another important thing is that it also does not share font map files with LaTeX and, specifically,
 +
 
 +
'''ConTeXt does not make pdfeTeX read <tt>pdftex.map</tt>.'''
 +
 
 +
(this is at the root of a great many problems reported by users only familiar with PSNFSS)
 +
 
 +
The preferred format for metric files in ConTeXt is
 +
 
 +
<tt><vendor>/<familyname>/<encoding>-<fontname>.tfm</tt>
 +
 
 +
for metrics and
 +
 
 +
<tt><encoding>-<vendor>-<familyname>.map</tt>
 +
 
 +
for the mapping files.
 +
 
 +
*  <fontname> is usually derived from the font source (afm or ttf),
 +
*  <encoding> is a 'controlled' list, (see [[Encodings and Regimes]])
 +
*  <vendor> and <familyname> are user-supplied (at install time).
 +
 
 +
There are ways to trick ConTeXt into using different conventions, but if you do that you are likely to run into trouble.
 +
 
 +
= Unsorted links =
  
* [http://homepage.mac.com/atl/tex/  Adam Lindsay's page] focuses on typography (OpenType, Unicode etc.), esp. on MacOS X
 
* [http://home.salamander.com/~wmcclain/context-help.html Bill McClain's ConTeXt beginners page] has also a lot about fonts
 
 
* [http://www.pragma-ade.com/general/manuals/mtexfont.pdf font installation with texfont] by Pragma
 
* [http://www.pragma-ade.com/general/manuals/mtexfont.pdf font installation with texfont] by Pragma
 
* [http://www.pragma-ade.com/general/manuals/mfonts.pdf ConTeXt's font mechanism in detail] by Pragma
 
* [http://www.pragma-ade.com/general/manuals/mfonts.pdf ConTeXt's font mechanism in detail] by Pragma
 +
* [http://tug.org/TUGboat/Articles/tb28-2/tb89mahajan.pdf ConTeXt basics for users: Font styles] by Aditya Mahajan (2007)
 
* [http://www.pragma-ade.com/general/manuals/mmakempy.pdf making outlines] by Pragma
 
* [http://www.pragma-ade.com/general/manuals/mmakempy.pdf making outlines] by Pragma
* [http://pragma-ade.nl/fonttest.pdf Here] you can try out several TeX fonts online (PDF interface!)
+
* [http://pragma-ade.com/specials/fonts/fontspecial-p.pdf Here] you can try out several TeX fonts online (PDF interface!)
* [[Tips from experience]] - including: solving texfont problems.
+
* Troubleshooting: solving [[TeXfont]] problems.
 
+
* Character [[Protrusion]] (also known as hanging or font handling) is a more subtle typographic effect.
==Typescripts==
+
* [[Font Handling Internals]]
* [http://www.pragma-ade.com/general/manuals/showfont.pdf examples of using typescripts] by Pragma
+
* [http://watershade.net/wmcclain/context-help.html Bill McClain's ConTeXt beginners page] has also a lot about fonts
* [http://www.ramm.ch/fiee/texnique/?menu=0-1-4&amp;lang=en example typescripts] for free and commercial fonts, by Hraban
+
* [[Pseudo Small Caps]] by Vit Zyka
* typescripts for some fonts from the FontSite500 CD on the [[Font Site]] page, by Holger Sch�ner
+
* [[Understanding how fonts work in ConTeXt]]
* typescripts for lazy font combinations on the [[Flexi Face]] page
 
* some pointers on extending typescripts to accommodate access to &ldquo;variants,&rdquo; like old-style figures, are on the [[Font Variants]] page
 
* [[Fonts in XeTeX]] gives some details about the [[XeTeX]]-specific typescripts in <tt>type-xtx</tt>
 
 
 
==Configuration==
 
* Using [[psnfss]] metrics in ConTeXt
 
* Matt Gushee about [http://havenrock.com/textips/bookfonts.html virtual fonts]
 
 
* Fonts rely on [[Encodings and Regimes]], and it helps to know what happens underneath the hood, from time to time.
 
* Fonts rely on [[Encodings and Regimes]], and it helps to know what happens underneath the hood, from time to time.
* Configuration of fonts for [[Vietnamese]].
 
 
* In newer distributions, map files belong in <tt>&hellip;/fonts/map/pdftex/context</tt>!
 
* In newer distributions, map files belong in <tt>&hellip;/fonts/map/pdftex/context</tt>!
 
* Don't forget to look at  [[cont-sys.tex]]!
 
* Don't forget to look at  [[cont-sys.tex]]!
:For me, typescripts only work if I activate <cmd>autoloadmapfilestrue</cmd> and <cmd>resetmapfiles</cmd> in <tt>cont-sys.tex</tt> --[[User:Hraban|Hraban]] 2004-08-23
+
 
 +
= Where to find fonts =
 +
 
 +
You can have a look to [[Available Free Fonts]] from the web.

Revision as of 20:34, 2 June 2020

< Text formatting | Symbols | Languages >

How to use fonts in ConTeXt

The ConTeXt way of handling fonts are TypeScripts. It’s a system of abstraction and aliases, which may seem “strange” at first for new users of ConTeXt.

Specific page deals with

Font support & configuration

Type 1 fonts

Type 1 fonts come in multiple files. The various components are:

  • .pfb: "Printer Font, Binary".
  • .pfa: "Printer Font, ASCII".
  • .pfm: "Printer Font Metrics", binary.
  • .afm: "Adobe Font Metrics".

Typically each font will have a set of outlines in a pfb or pfa file, and a set of metrics in a pfm or afm file.

Which file variations are preferred depends on platform. Linux prefers pfa and afm (the ASCII versions). Windows prefers pfb and pfm (the binary versions). Mac OS X prefers pfm and afm.

On the Mac, you may encounter old-style PostScript Type 1 fonts which have an extensionless file containing the font outlines. These are a relic from the days when bitmaps were used to display fonts on screen, and the PostScript was downloaded to the printer. Your best bet is to throw them away and get an up-to-date OpenType version, or use a font editing utility such as fontforge to convert them.

On Windows 7, the OS will identify only the .pfm file as the actual font. However, when you install the font, Windows invisibly locates the matching .pfb file from the same directory, and copies them both to the C:\Windows\Fonts directory.

True Type fonts

OpenType fonts

Basic Hints

How to change to Palatino for text with Euler for math: Palatino with Euler for Math

Some hints by Taco from the mailing list on 2005-11-20:

Q: How up to date or out of date is the information in mfonts manual?

A: It looks like it is still quite up-to-date, but some of the examples it gives may no longer be the very best and latest way of doing things, and possibly there are some new developments that do not get as much attention as desired (like texfont, and the issues arising from font map files). Overall, the document appears accurate, though.

An important thing to remember is this:

ConTeXt does not share font metric conventions with LaTeX.

(at one point it started doing so, like supporting the Karl Berry naming scheme and the PSNFSS style font family names, but that has since been abandoned).

Another important thing is that it also does not share font map files with LaTeX and, specifically,

ConTeXt does not make pdfeTeX read pdftex.map.

(this is at the root of a great many problems reported by users only familiar with PSNFSS)

The preferred format for metric files in ConTeXt is

<vendor>/<familyname>/<encoding>-<fontname>.tfm

for metrics and

<encoding>-<vendor>-<familyname>.map

for the mapping files.

  • <fontname> is usually derived from the font source (afm or ttf),
  • <encoding> is a 'controlled' list, (see Encodings and Regimes)
  • <vendor> and <familyname> are user-supplied (at install time).

There are ways to trick ConTeXt into using different conventions, but if you do that you are likely to run into trouble.

Unsorted links

Where to find fonts

You can have a look to Available Free Fonts from the web.