[luatex] ligatures in OT truetype-fonts

Khaled Hosny khaledhosny at eglug.org
Sun Dec 8 00:15:39 CET 2013


On Sat, Dec 07, 2013 at 11:53:10PM +0100, Florian Grammel wrote:
> Until now a XeLaTeX-user, I'm trying to get the hang of LuaLaTeX's font handling. Most things work perfectly fine, but LuaTeX's behaviour for some of my OpenType (TrueType) fonts is really puzzling me:
> 
> When I compile a simple example like
> 
> \documentclass{article}
> \usepackage{fontspec}
> 
> \setmainfont%
> [Ligatures=Common]% this should be superfluous, shouldn't it?
> {somefont}
> 
> \begin{document}
> fish fly 
> \end{document}
> 
> 
> I usually get the same result with LuaLaTeX as with XeLaTeX, i.e. when
> the font has a liga-feature, fi and fl are rendered as ligatures.
> 
> But using Didot.ttc or Baskerville.ttc (both vers 9.0d1e1 as installed
> my MacOS 10.9) *only* XeTeX (3.1415926-2.5-0.9999.3) shows the
> ligatures, but LuaTeX (beta-0.76.0-2013061817 (rev 4627)) doesn't.
> Even stranger, Didot 6.1d4e1 from an older MacOS, probably 10.7,
> doesn't show ligatures on neither up-to-date engine, but *does* so,
> when compiled with LuaTeX beta-0.70.2-2012062819 as installed by
> TeXLive 2012 on the older machine.

This should be reported to luaotfload authors, but anyway the fonts in
question are likely to be AAT not OpenType fonts (most Apple own fonts
are AAT, specially the old ones), and LuaTeX do not support AAT fonts
(XeTeX does, but only on OS X as this feature uses Apple’s text layout
API).

The fact it worked somehow in TeX Live 2012 is because the FontForge
based font loader was reading AAT code and tries to map it to OpenType
features when possible, but this had bad side effects with hyprid
AAT/OpenType fonts and has been disabled. Next versions of LuaTeX will
drop the AAT code in the font loader because it is incomplete and broken
causing crashes with some AAT fonts.

Regards,
Khaled


More information about the luatex mailing list