[comp.fonts] PostScript Times-Roman character substitutions

mcglk@scott.stat.washington.edu (Ken McGlothlen) (09/24/88)

Being one of the few people that actually uses native PostScript around
here gets me in trouble on occasion.  This is one of those times.

I've been asked if I would find a way to replace four characters--the
yen sign (0xA5), the florins sign (0xA6), the section sign (0xA7), and
the "splat" sign (0xA8)--with the upper- and lowercase thorn, and the
upper- and lowercase yogh, respectively.  (These are generally used in
Old English texts, and look vaguely like "P"s, incidentally.)

My problem is that I'm quite used to drawing figures, but haven't a
clue as to go about working on fonts.  I assume lineto and curveto
operators would be on the slow side, but I don't know how else to go
about it.  Plus I haven't the faintest idea how to tell PostScript
to use my routine instead of the yen-sign routine when it hits a
0xA5 code.

Could someone out there get me started?  Of course, if there's a
thorn and yogh set out there, that would be delightful.  But if
not, I need some serious help. . . .

Thanks. . . .

				--Ken McGlothlen
				  mcglk@scott.biostat.washington.edu
				  mcglk@max.acs.washington.edu
				  mcglk@max.bitnet

dns@sq.uucp (David Slocombe) (09/28/88)

mcglk@scott.biostat.washington.edu (Ken McGlothlen) writes
in comp.lang.postscript and comp.fonts:

> I've been asked if I would find a way to replace four characters ...
> with the upper- and lowercase thorn, and the
> upper- and lowercase yogh, respectively. 
> ...  Of course, if there's a thorn and yogh set out there,
> that would be delightful.

Old English needs the following special characters:

eth	lower-case (like an "d" with a curved ascender and a line through it)
Eth     Upper-case (like a "D" with a line through the vertical part)
thorn	lower-case (like a "p" superimposed on a "b", sort of)
Thorn	Upper-case (a different version of the lower-case thorn)
wynn	lower-case (like a "p" but different)
Wynn	Upper-case (like a "P" but different)
yogh	lower-case (like a flat-topped "3" dropped down below baseline)
Yogh	Upper-case (like a flat-topped "3" NOT dropped down)
The symbol for "and" (looks like a "7" dropped down)
A punctuation mark that looks like an upside-down, mirror-image ";"

Now it happens that the subset {eth, Eth, thorn, Thorn} is also
used in modern Icelandic, and when Adobe decided to upgrade their
fonts to support European languages, these characters got added
along with accented characters.  However they do not have assigned
values in the "encoding vector": you have to do that yourself.
And of course you have to add the appropriate font-metrics to
whatever tables your text-formatter uses.

I know for a fact that Adobe's latest ROMs (Rev. 42.0) for the
Apple LaserWriter have these four symbols in Roman, Italic, and
Bold (at least) for Times and Helvetica.  As far as we can tell,
these same ROMs don't contain these symbols for Palatino. Perhaps
Adobe can explain.  (The currently-shipped Garamond downloadable
fonts for PostScript also have them.  Perhaps many others too.)

The other symbols (the subset {wynn, Wynn, yogh, Yogh,"and","upside-down-;"})
have to be created and downloaded to the PostScript printer.  And their
font-metrics have to be added to your formatter's tables.

We at SoftQuad have created these latter characters for downloading
to PostScript printers, in Times and Helvetica, and in Roman,
Italic, and Bold styles.  We have a file which downloads these 36
glyphs and fixes the encoding vector for the 24 ROM-based glyphs.

We could probably turn them into bitmap fonts for the HP LaserJet too,
although we haven't actually tried that.

We invite inquiries from Old English users. 

Followup postings (if any) to comp.text, please.

----------------------------------------------------------------
David Slocombe				(416) 963-8337
Vice-President, Research & Development  (800) 387-2777 (from U.S. only)
SoftQuad Inc.				uucp: {uunet!attcan!utzoo, utai}!sq!dns
720 Spadina Ave.			Internet: dns@sq.com
Toronto, Ontario, Canada M5S 2T9