Faking the ligatures
Primoz Peterlin
peterlin@biofiz.mf.uni-lj.si
Tue, 5 Sep 2000 15:47:32 -0400
Hello,
OK, this is a rookie question, I know. So please bear with a fontinst
beginner for a moment...
HISTORIA: A minor local publishing house here uses a set of Type 1 fonts
for a series of books they produce. They are usually doing their
typesetting with PageMaker or some similar Windows thing. And... Their set
of Type 1 fonts is not using Adobe Standard Encoding, but Windows' own
CP1250 encoding instead. And... I was challenged with the task of
mimicking their layout in LaTeX. :)
STORIA: Fontinst looks *the* tool for the job. When encountered an
encoding other than Adobe Standard Encoding, fontinst surprised me with
the intelligent reaction. All the letters I need -- \v{c}, \v{s} etc. --
are here. I don't really understand whether fontinst takes the ready-made
glyphs from the original fonts or constructed them, but I don't care at
this stage.
However, I have problems with `fi' and `fl' ligatures. Even though CP1250
is much more populated with glyphs than the Adobe Standard Encoding, it is
lacking them. I would like to substitute them with `fi' and `fl',
respectively. I believe virtual fonts are the right place to make such a
substitution, right?
Another interesting observation (which probably only tells how little I
know about fontinst operation): `fi' and `fl' are there on the screen when
I preview with Xdvi, but are missing when I print the document on a
PostScript printer. MakeTeXPK -- or gsftopk -- obviously knows how to
replace `fi' ligature with f and i. Where does it get this information
from?
The fontinst file I am using is rather basic:
\input fontinst.sty
\transformfont{ulgr8r} {\reencodefont{8r}{\fromafm{ulgr8a}}}
\installfonts
\installfont{ulgr8t} {ulgr8r,latin} {T1}{T1}{ulg}{m}{n}{}
\endinstallfonts
\bye
And it actually produces a virtual properties list file which IMHO
contains the instructions on constructing the ligature:
(CHARACTER D 28 (COMMENT fi)
(CHARWD R 12.0)
(CHARHT R 7.34998)
(CHARDP R 0.0)
(MAP
(SETCHAR D 102) (COMMENT f)
(SETCHAR D 105) (COMMENT i)
)
)
So why is the slot still empty on the printer? My psfonts.map contains
ulgr8t LetterGotLEE-Medi "CorkEncoding ReEncodeFont" <cork.enc <LE21004L.PFB
So what am I doing wrong?
With kind regards,
Primoz
--
Primož Peterlin, Inštitut za biofiziko, Med. fakulteta, Univerza v Ljubljani
Lipičeva 2, SI-1000 Ljubljana, Slovenija. primoz.peterlin@biofiz.mf.uni-lj.si
Tel: +386-1-5437632, fax: +386-1-4315127, http://sizif.mf.uni-lj.si/~peterlin/