PSAlter and fonts







- Introduction
- Font handling features
- Advanced font substitution
- Questions and answers
PSAlter has more advanced font handling than a typical
printer, allowing you to make more effective use of
the fonts you have installed.
Most printers and other PostScript products offer limited
control over font handling. A font may be included within
a PostScript file, or may be built in to the printer. If the
font cannot be found, most printers will substitute a
single font (often Courier). This gives you no chance
to maintain the look of a document.
Font handling features
PSAlter offers these features with font handling:
- Fonts found inside a PostScript file are handled as usual.
- When PSAlter is first installed it makes available to the
program the 35 fonts which are built in to a typical PostScript
printer. This is done using the fonts already installed in
your Windows system, maintaining the document's appearance
using advanced substitution facilities.
- If a font is referred to which is not found, you can choose what
PSAlter is to do. It can substitute a specific font, as in a
printer, but normally it will prompt you. Given the name of
the font, you can choose a substitute from the fonts in your
Windows system. These are (optionally) remembered between
sessions.
- PSAlter works with TrueType fonts and also with PostScript
fonts installed with Adobe Type Manager (ATM). You have the option
of making all of your ATM fonts available automatically.
- You can use PostScript fonts even without Adobe Type Manager
(though the quality is not as good), by defining one or more
directories to search for fonts.
Advanced substitution features
Substitutions can be defined in PSAlter in advance, or added
dynamically when a font is seen for the first time. A
substitution indicates which font is to be used when a
PostScript program refers to a particular name. For instance,
if you do not have the Helvetica font installed, there will
be a substitution in effect so that if a program asks for
'Helvetica-Bold', then the bold version of the Windows Arial
font will be used.
User font substitution
User font substitution is as described above. It is under
your control. Substitutions can be grouped into 'packages' and
they can be selectively enabled or disabled. New substitutions
are automatically added to a package 'Not saved'. On exit, if
anything is left in 'Not Saved' you are given the choice of
discarding it or moving it to a saved package for future runs.
Special features available when choosing a font substitute
include the ability to define a horizontal scale factor.
For instance, you might define Helvetica-Wide to mean Arial
with a width of 130%. You can also define a font to be a
symbol font, to avoid the remapping of accented characters
which PSAlter does automatically.
A substitute font uses the width of the Windows font, by default,
which means spacing could go astray. You can avoid this by using
metrics files.
System font substitution
When it is installed, PSAlter comes with a set of system font
substitutions already defined. The aim of this is to give the
best possible reproduction of the 35 fonts which are built in
to a typical PostScript printer.
Several alternative substitutions are defined. For instance, if
you have installed the 'Adobe Type Basics' product, you will have
all of the 35 fonts already installed, and PSAlter will use them.
If they are not found, PSAlter will try a series of commercial
font packages, and conclude by providing substitutes from the
fonts built into every Windows system. Because the widths are
correct, text should be perfectly readable, and most users will
find the results with just the basic fonts acceptable - see
font substitution
comparisons.
The following commercial font packages are recognised automatically:
- Adobe Type Basics (fonts also found in ATM Plus Pack and
supplied with some versions of Acrobat Distiller). Can use a
subset of fonts in any package: for instance if you have ATM
only, it may have come with Times, Helvetica and Courier; these
will be used.
- Microsoft TrueType font pack volume 1.
- Corel Draw versions 3 to 5.
- Built in: Arial, Times New Roman, Courier New, Symbol,
Wingdings.
If you have a different collection it can readily be added as a
user package.
Font directories
If you have a collection of PostScript fonts but do not want to
install them into ATM, you can define to PSAlter one or more
font directories. These are scanned looking for font files, and
the fonts are automatically available.
If practical, ATM is recommended, since it produces clearer fonts
at small type sizes.
PSAlter has a highly efficient system for rescanning font
directories when restarted. Because it assumes that a font file
always contains the same font, it only needs to check the list
of files. This means that hundreds of fonts can be used without
undue delays starting PSAlter.
Font metrics (AFM files)
Each font has slightly different character spacing. The dimensions
and spacing of a font are referred to as its metrics.
If one font is substituted for another, the substitute may not
be exactly the same size. This can lead to reduced quality -
for instance text may have gaps of areas of overlap. Since it
is not always possible or desirable to obtain the actual font
(apart from anything else, a large font library is extremely
expensive), PSAlter allows you to provide the metrics of fonts
that you do not have, in order to maintain accurate spacing.
The standard file for defining font metrics is an Adobe Font
Metrics (AFM) file. This is an ASCII file in a simple format.
Many font manufacturers make AFM files available freely for their
fonts. Adobe make theirs available
on their
FTP server.
When you have collected AFM files you can put them in a directory
and instruct PSAlter to search it. Then, whenever a font is
substituted, the directory will be searched to see if an accurate
set of metrics is available.
The full specification of AFM files is available from Adobe
in
Acrobat PDF (168K) format. This is very detailed, and includes
much information not used by PSAlter.
Questions and answers
What types of font does PSAlter support?
Within a PostScript file, PSAlter supports the common 'type 1'
and 'type 3' font format. It does not support the 'type 0' composite
fonts used mostly for far Eastern fonts.
For substitution, PSAlter can use any TrueType font installed
into Windows, or any font installed using Adobe Type Manager. Also,
PostScript fonts installed into a directory provided that they start
with a recognisable header given the font name.
What about Multiple Master fonts?
Multiple Master fonts are a new kind of font developed by Adobe
to support variations in character shape. Because they are based
on type 1 fonts, PSAlter supports them fully.
Why don't you include any fonts?
Many windows users already have their disks packed with fonts,
and would not welcome several megabytes more. In our experience,
most users are not unduly concerned with the exact look of fonts,
provided that the character spacing and style remains consistent
(take a look at the font substitution
comparisons).
Professional users who are particularly concerned with the look
of fonts will probably already have invested in a set - quite
likely one of those built in to PSAlter - containing high quality
fonts suitable for use. Fonts of a sufficiently high quality would
also add substantially to the cost of PSAlter, with many users paying
for something that they did not need.
How do Windows fonts appear to the PostScript programmer?
This contains technical details not of interest to most users.
The PostScript programmer will find that a Windows font in PSAlter
can be used in exactly the same way as a resident type 1 font in a
printer. These notes may be of interest:
- Windows fonts appear as type 1 PostScript fonts, except that
the CharStrings entries are special. They do not
exist in FontDirectory until the first reference
to them.
- Fonts can be used in all contexts, including with the
CharPath
operator, and converting to stroked fonts by changing
PaintType.
- Updating of Encoding is supported. By default, Windows fonts are
assumed to follow the Microsoft font encoding and are re-encoded to
use StandardEncoding. However, a font can be defined as a symbol font
to prevent automatic remapping.
- The glyphs present in the font will normally be based on either
StandardEncoding or SymbolEncoding,
but if an AFM file is provided
for the font, it can give a different set of glyphs.
- An attempt is made to support every character in
StandardEncoding
and ISOLatin1Encoding, even if Windows does not directly support
the character. Ligatures like 'fi' and 'fl' are synthesised.
- The only known restrictions are
- a Metrics
dictionary cannot be used to change character spacing;
- character outlines are not 'normalised' to ensure that they are
anticlockwise;
- it is not possible to access characters outside the windows
encoding in an ATM font (except for the special cases of simulated
ligatures for fi, fl, Lslash and lslash; note that ae and oe
do appear in the Windows font encoding).
- to access characters by their glyph name in a font which is not
based on either the Windows or Symbol encoding, an AFM file for the
font may be needed.
We are confident that these will not affect many programs.
See also
What is PSAlter?
PostScript introduction
Go to Quite At Home.
Back to information on PSAlter.
Back to Quite at Home.






