Hoefler Text Extended Ligatures and XeTeX

I'm using XeTeX (MacTex 2010, Mac OSX 10.6) to render a document in Apple Hoefler Text. However, although I can make it render common ligatures, such as fi and ffi, I can't seem to be able to force it using some extended ligatures as those displayed here. Any suggestions? Here's the code I am using:

\documentclass[10pt]{article}
\usepackage{fontspec,xltxtra}
\setromanfont[Mapping=tex-text]{Hoefler Text}
\fontspec[Mapping=tex-text, Ligatures={Common, Rare, Historic}]{Hoefler Text}

\begin{document}\noindent
Que dictes vous de mon appel, \\
Toute beste garde sa pel \\
Qui la constraint, efforce ou lie
\end{document}

• Possible duplicate: Ligatures in Hoefler with XeTeX? – Hendrik Vogt Feb 7 '11 at 18:13
• It seems the duplicated article is only focused on rendering any ligatures, while my question is about rendering the extended family of ligatures. – Hugo Sereno Ferreira Feb 7 '11 at 18:18
• Are you running OSX 10.5.x or 10.6.x? – morbusg Feb 7 '11 at 18:32
• @morbusg: Just added the MacTex and OSX versions. – Hugo Sereno Ferreira Feb 7 '11 at 18:35
• does it work if you replace \fontspec with \setmainfont? – Philipp Feb 7 '11 at 18:53

Did you try to compile the examples given by Dario Taraborelli on his page, The Beauty of LATEX, especially the Hoefler sample? It seems to work for me (OS X 10.6, TexLive 2010). The trick is to pass Alternate=1 to \fontspec (see the fontspec documentation with e.g. texdoc), as in

\fontspec[Ligatures={Common, Rare}, Alternate=1]{Hoefler Text}
\fontsize{24pt}{30pt}\selectfont
\noindent
Que dictes vous de mon appel, \\
Toute beste garde sa pel \\
Qui la constraint, efforce ou lie\


for the third paragraph below:

• Thank you, that worked. Do you know how to disable the Alternate for \emphs{} and keep it for normal font? – Hugo Sereno Ferreira Feb 7 '11 at 19:45
• Found the answer: \setmainfont[Mapping=tex-text, ItalicFeatures={Alternate = 0}, Ligatures={Common,Rare,Historic},Alternate=1]{Hoefler Text} – Hugo Sereno Ferreira Feb 7 '11 at 20:15

For me

\documentclass[10pt]{article}
\usepackage{fontspec}
\setromanfont[Mapping=tex-text,Ligatures={Common, Rare}]{Hoefler Text}
\begin{document}
\noindent
Que dictes vous de mon appel, \\
Toute beste garde sa pel \\
Qui la constraint, efforce ou lie
\end{document}


works but something like

\documentclass[10pt]{article}
\usepackage{fontspec}
\setromanfont[Mapping=tex-text]{Hoefler Text}
\fontspec[Ligatures={Common, Rare}]{Hoefler Text}
\begin{document}
\noindent
Que dictes vous de mon appel, \\
Toute beste garde sa pel \\
Qui la constraint, efforce ou lie
\end{document}


does not. So you need to watch that you set your font features with the main loading, if you do it in the preamble (all is fine if you put \fontspec[Ligatures={Common, Rare}]{Hoefler Text} after \begin{document}).

• (+1) That's very nice because I've look for old sample code where I saw that behavior but without any success.... – chl Feb 7 '11 at 21:50

With Hoefler Text Pro 1.201 you need to type \fontspec{Style = Historic, Ligatures = Historic}{Hoefler Text Pro}

However, if you are uncertain of the features your font contains, you are better off checking what features your font has, one solution is FontLab Studio or fontForge. Then check how to enable such features, on section 15 "OpenType Features" in the fontspec documentation; there's a table in page 37, listing all supported features. If for whatever reason there are features you would like to use, but are not supported by fontspec, you can add them using the \newopentypefeature command, explained on section 22 "Defining new features".

As to adding new features to your specific font file you might want to check FontLab Studio, fontForge or Adobe's AFDKO, and resolve to checking Adobe's documentation on OpenType features.

• Are you sure that you need to set a Style attribute? – TeXnician Nov 8 '17 at 18:20
• It loads the long S for me, I dont know if you're on a mac the font is different – Suppboi Nov 8 '17 at 20:34
• @TeXnician I hope this updated answer further helps you – Suppboi Jan 29 '18 at 22:34