Helping XeLaTeX Find TrueType Ligatures

I’m using a .ttf version of the font Century Schoolbook in a XeLaTeX document, and I’m having some issues with ligatures and kerning. Here’s what the following code, compiled with XeLaTeX in TeXShop, outputs for me:

\documentclass[11pt]{article}

\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{Century Schoolbook}

\begin{document}
fi fl f'
\end{document}


I’ve had the same issue using e.g. Ligatures=Common and other basic variants.

When I examined actual font files in FontBook, the ligatures were indeed there: glyphs 192 and 193 were the ligatures for fi and fl, respectively. Is this an issue of XeLaTeX simply failing to find them, then? And if so, is there a way I could point it in the right place?

As for the nasty looking f’ combination in the picture above, I suppose that’s not a ligature problem but a kerning one. I find it strange, but can easily fix it with a \hspace command, at least.

• It’s hard to say what causes the problem unless we know the exact version of the font. Have you tried TeX Gyre Schola, which is based on the URW++ Century Schoolbook L? – Thérèse Dec 17 '16 at 1:09
• I’m using Monotype’s Century Schoolbook, Version 2.35. I have tried TeX Gyre Schola, and it’s a fine typeface, but quite different from Monotype’s, which I would still like to get working. – James Pirlman Dec 17 '16 at 1:22
• Are you sure Ligatures=TeX is the right option to use? If you see Table 2 in the Fontspec docs, it specifies different options to use based on which OpenType table the ligatures are in (rlig, liga, clig, etc). You can probably examine the font, see under which tag your preferred ligatures occur, and then use the corresponding option. – ShreevatsaR Dec 17 '16 at 6:48
• Coincidentally I had a similar Century Schoolbook on my system, and I can see it's not an OpenType font at all — it's in an older format. None of the ligature tables exist. I can access the glyphs with \symbol{"F001}, \symbol{"F002}, \symbol{"FB01} and \symbol{"FB02} but I don't know how to make TeX pick up these glyphs in place of every fi and so on. – ShreevatsaR Dec 17 '16 at 7:08
• @ShreevatsaR My Century Schoolbook is TrueType, so really there was no point in me adding Ligatures=TeX. Force of habit. I’ve found that I can manually insert the glyphs by a similar method, so I suppose I’ll just do that. I also am having a similar issue with some OpenType fonts, however—if I load a font by file name I don’t get any ligatures, but if I load it by font name then I do. Strange. – James Pirlman Dec 17 '16 at 7:39