Difference between revisions of "Psnfss"

From ConTeXt wiki
m (added MKIV warning)
m (Added footnote about T1 to OpenType)
Line 5: Line 5:
 
installed on your LaTeX system. One of its purposes is to access the
 
installed on your LaTeX system. One of its purposes is to access the
 
standard postscript fonts that printers have built in, also known as
 
standard postscript fonts that printers have built in, also known as
the thirty five base fonts. Part of PSNFSS is a set of font metrics
+
the thirty five base fonts.
 +
(Note, however, that the Adobe Type 1 (postscript) fonts have been replaced
 +
by the [http://www.adobe.com/type/opentype/T1_to_OTF_FAQ.htm OpenType] standard,
 +
available in ConTeXt through the [[TeX_Gyre]] fonts.)
 +
 
 +
Part of PSNFSS is a set of font metrics
 
(the tfm-files) that allows TeX to use the fonts for typesetting (TeX
 
(the tfm-files) that allows TeX to use the fonts for typesetting (TeX
 
only knows about metrics, not outlines).
 
only knows about metrics, not outlines).

Revision as of 11:49, 21 January 2009

What is PSNFSS?

PSNFSS is an abbreviation of ‘post script new font selecting system,’ a terminology from LaTeX. It is an additional package that is usually installed on your LaTeX system. One of its purposes is to access the standard postscript fonts that printers have built in, also known as the thirty five base fonts. (Note, however, that the Adobe Type 1 (postscript) fonts have been replaced by the OpenType standard, available in ConTeXt through the TeX_Gyre fonts.)

Part of PSNFSS is a set of font metrics (the tfm-files) that allows TeX to use the fonts for typesetting (TeX only knows about metrics, not outlines).

PSNFSS contains the following fonts:

font familystylesKB nameConTeXt typescript
AvantGarde4: Book, Demi + Obliquepagurwgothic, using the urwgothic typescript
Bookman4: Light, Demi + Italicpbkbookman
Courier4: (Normal), Bold + Obliquepcrcourier (tt)
Helvetica4: (Normal), Bold + Obliquephvhelvetica (ss)
Helvetica-Narrow4: (Normal), Bold + Obliquephv*n?
New Century Schoolbook4: Roman, Bold + Italicpncschoolbook
Palatino4: Roman, Bold + Italicpplpalatino
Symbol1: (Normal)psy?
Times4: Roman, Bold + Italicptmtimes
Zapf Chancery1: MediumItalicpzcchancery (cg!)
Zapf Dingbats1: (Normal)pzd(access through symbols)

How do I access these fonts from ConTeXt?

(MKII only; MKIV uses the TeX_Gyre fonts, see Fonts)

You can use the various psnfss font families by using commands like

\usetypescript[times][ec]
\setupbodyfont[times,12pt]

Note that in the case of “helvetica” these lines should be replaced with:

\usetypescript[helvetica][ec]
\setupbodyfont[helvetica,ss,12pt]

or

\usetypescript[helvetica][ec]
\setupbodyfont[helvetica,12pt]
\starttext
\ss

since helvetica is sans serif.

Here is an example:

%\usetypescript [adobekb][8r,ec] % uncomment for old ConTeXt
\usetypescript[times][ec]
\setupbodyfont[times,12pt]

\starttext

\input knuth
\blank
And this is some maths with PostScript fonts. 
\startformula
{a \over b} = {c \over d} \iff ad - bc = 0, 
\qquad \int_0^{2\pi}\!\!\! \sin^2(x)dx =\pi, 
\qquad {\rm e}^{{\rm i}\pi} + 1 = 0,
\qquad \sum_{k=1}^{\infty}{1 \over k^2} = {\pi^2 \over 6}.
\stopformula
Some ligatures: ffi, ffl. 

\stoptext

Examples of mixing typefaces

Suppose you want

  • For normal text use the Times-Roman font
  • For math's use a different font, i.e. Latin Modern

then use

 \usetypescript[modern]
 \usetypescript[times][ec]

 \definetypeface[MyFace][rm][serif][times][default][encoding=ec]
 \definetypeface[MyFace][mm][math][modern][default][encoding=ec]

 \setupbodyfont[MyFace,12pt]


Notes

Pdftex warning messages

You are likely to get some warnings from pdfetex like

 Warning: pdfetex (file ec-urw-times.map): cannot open font map file

but these are harmless and can be ignored.

Older ConTeXt releases (pre 2006.01.09)

If you use an older ConTeXt release (like one that came with your TeX installation) you will have to change an internal mapping of font filenames with this command:

\usetypescript [adobekb][8r,ec]

In new ConTeXt releases, this has become the default behaviour.

Even older ConTeXt releases

If you are stuck on Debian 3.1 like me, or are running a ConTeXt release before August 2003, you can download the adobekb.tex file from levana.de. Or maybe upgrading teTeX from backports will solve that?