[Fontinst] LIG plus kerning

Bernd Raichle raichle at Informatik.Uni-Stuttgart.DE
Thu Oct 21 10:47:53 CEST 2004


On Wednesday, 20 October 2004 11:40:05 +0200,
Ulrich Dirr <ud at art-satz.de> writes:
 > > Ulrich Dirr wrote:
 > > 
 > > > Lars Hellström wrote:
 > > > 
[...]
 > > >>Not really, since this is a fundamental limitation of the TeX ligaturing
 > > >>mechanism: kerns and ligatures are formed in a single pass over the text,
 > > >>so the right hand side of a kerning or ligature pair will always be a raw
 > > >>character. (Maybe you can get it right if you do something really clever
 > > >>with the more exotic ligaturing instructions and additional dummy
 > > >>characters, but that it most likely not worth the trouble.)
 > > >>
 > > >>
 > > >>>Can I combine this 'two-step'-ligatures with individual kerning pairs?
 > > >>
 > > >>Kerns to its right will work as usual. Kerns on its left have no effect
 > > >>since the ligature has not yet been formed when that kern position is
 > > >>considered. 
 > > >>
 > > >>Similar problems occur in the T1 encoding for the >> and << ligatures.
 > > > 
 > > > That's bad news. So I've to find a 'nice' looking char for direct input
 > > > (the ANSI dec133 is already used by another glyph). And a macro solution
 > > > like \dots would make the input file unreadable because 'ellipsis' is used
 > > > heavily.
 > > 
 > > Well, experience shows that for typical texts with ...
 > > this: '...' --> '..' +  '.' --> 'ellipsis' or '. . .' (kerned dots)
 > > works reasonably well and provides an easy automatic + transparent 
 > > improvement compared to the text where authors simply didn't 
 > > care about...
 > 
 > I don't understand this. I've made the lig mechanism '.' + '.' --> '..' +
 > '.' --> 'ellipsis'. But as Lars has pointed out I will lose the kerning.

As already mentioned TeX single pass interwoven ligature&kerning
builder won't allow kerning for glyph/ligature + ligature.  It only
allows kerning for glyph/ligature + glyph.

On the non-macro level there exists only one solution using TeX: There
is no problem if the first glyph of a ligature has (almost) the same
kerning on the left side as the ligature.  If this is not true you
have to use a macro based solution.

What is needed to solve this restriction is a TeX extension, where the
ligature and kerning building passes are separated.  After some
experiments I have a prototypical implementation showing that this
separation of ligature building and kerning insertion is possible in a
single pass, too! :-)

The sad thing is that I had no time to implement this prototypical
solution as a TeX.web patch.  Probably there is someone with enough time
and TeX.web knowledge?


[...]

Regards,
  -bernd



More information about the fontinst mailing list