[Fontinst] ITC Galliard CC - ff, ffi & ffl ligatures

Lars Hellström Lars.Hellstrom at residenset.net
Tue Apr 28 12:49:54 CEST 2009


Christopher Adams skrev:
> On Mon, Apr 27, 2009 at 8:03 PM, Plamen Tanovski <pgt at arcor.de> wrote:
> 
>> \installfont{fglrj8t}{fglrj8r,newlatin,fgllig}{t1}{T1}{fglj}{m}{n}{} %
>> i.e,
>>
>>  Load newlatin after fglig.
>>
> Ah, an elementary error in syntax. 

Rather an error in semantics; fontinst's general principle is "first 
definition sticks", so the implication in this case where fgllig.mtx 
and newlatin.mtx both define the ff glyph is that the second doesn't 
get a say in the matter.

> This indeed solves the problem. Thank you!
> 
> 
> On Mon, Apr 27, 2009 at 8:57 PM, <cfrees at imapmail.org> wrote:
> 
>> A bonus would be not just getting these ligatures to work on {fglj} (since,
>>> as I mentioned, these glyphs are actually on fglrj8r), but to put them on
>>> {fgl} as well.
>>>
>> If the fgl fonts simply lack the glyphs, just add the appropriate call
>> to the fglj font on the install lines.
>>
>> e.g. \installfont{fglr8t}{fglr8r,fglrj8r,fgllig,newlatin}... or
>> whatever. But you can't use this method if the fgl fonts themselves
>> contain glyphs called ogonek etc. The method using \reglyphfont is
>> probably simpler to use here. You can probably do it, but it may be
>> rather awkward.
>>
>>
> In fact, the Roman does contain precisely those three glyphs! So it seems I
> would have to first rename the glyphs on OldStyleRoman {fglrj8r} and then
> add them to Roman{fglr8r}. I will have to revisit the /reglyphfonts command.
> Is that the way to do this?

Yes, this is what \reglyphfont is for.

> The situation with the fj ligature is analogous. It is in the j slot of
> Alt-Roman {fglra8a} and Alt-Italic {fglria8a}. Alt-Italic also has us, as &
> is ligatures in the [, \ and ] slots, if you can believe it.

With fontinst, the foundry's choice of slots in the base fonts is 
mostly irrelevant. What's troublesome is when the glyph names used are 
wrong.

> If I want to make use of these ligatures, I need to reglyph them with unique
> names, write a new .etx file with the new names and the right rules, process
> these and then add the result to {fglr8t}? I see that I can't accomplish
> this with the single line that is now giving me the ff, ffl & ffi ligatures.

You need an ETX putting fj in some slot, and to use it instead of 
t1.etx for defining the wanted encoding of the virtual font. You could 
probably have one that goes

\encoding
\relax

\setint{ligaturing}{-2}
\inputetx{t1}

\nextslot{73}
\setslot{I}\endsetslot

\nextslot{99}
\setslot{c}\endsetslot

\nextslot{102}
\setslot{f}
   \ligature{LIG}{f}{ff}
   \ligature{LIG}{i}{fi}
   \ligature{LIG}{j}{fj}
   \ligature{LIG}{l}{fl}
\endsetslot

\nextslot{105}
\setslot{i}\endsetslot

\nextslot{115}
\setslot{s}\endsetslot

\nextslot{156}
\setslot{fj}\endsetslot

\nextslot{27}
\setslot{ff}
    \ligature{LIG}{i}{ffi}
    \ligature{LIG}{l}{ffl}
\endsetslot

\setslot{fi}
\endsetslot

\setslot{fl}
\endsetslot

\setslot{ffi}
\endsetslot

\setslot{ffl}
\endsetslot

\endencoding

(Untested, so there may be typos.) For simplicity I've assumed \lc, 
\lclig, \uc, etc. all have their default values; see t1.etx for how 
they are used there.

Since all glyphs you want from the Alt fonts seem to be in a slot 
already, you don't need to make an ETX to reencode that.

> On Mon, Apr 27, 2009 at 8:03 PM, Plamen Tanovski <pgt at arcor.de> wrote:
> 
>>> The ff, ffl & ffi ligatures are encoded on the OldStyle fonts as cedilla,
>>> hungarumlaut & ogonek, respectively.
>> Madness. This means, all composite characters with those accents
>> nonexistent in the font should be removed.
>>
> 
> Yes, I had noticed this when I first got my hands on the typeface, and was
> testing out the glyphs by outputting all possible values of \char. These
> ligatures were being composited as if they were diacritical marks. This is
> only true of the OldStyle-Roman. The plain Roman doesn't have any strange
> encodings.

The \reglyphfont approach is superior in this aspect, since it doesn't 
just define the glyphs under their proper names but also doesn't define 
them under incorrect names.

> ITC Galliard was first issued in 1992. I believe the method of encoding
> assumes that typesetters will switch fonts manually when they want access to
> alternate glyphs.

In part, yes, but some (most?) popular font editors back then didn't 
care much about the glyph names either; you typically arranged glyphs 
by slot and got the name that (according to the default encoding) 
belonged in that slot. Since the typical word processor on top of the 
OS's graphics and printing libraries never bothered with glyph names, 
most users never noticed things were broken.

Lars Hellström


More information about the fontinst mailing list