xelatex & newpxtext: Missing small caps ligatures

I'm using the newpxtext package with xelatex, and I find I'm missing small caps ligatures when I pass the largesc option:

\documentclass[border=0.4in]{standalone}
\usepackage[largesc]{newpxtext}
\begin{document}
Isomorphism of Infinite Groups. \textit{vs.} \textsc{Isomorphism of Infinite Groups.}
\end{document}


Note Innite instead of Infinite. Compare this to the result without largesc:

\documentclass[border=0.4in]{standalone}
\usepackage{newpxtext}
\begin{document}
Isomorphism of Infinite Groups. \textit{vs.} \textsc{Isomorphism of Infinite Groups.}
\end{document}


I am certainly not savvy enough to suss out what might be happening here; any help would be appreciated.

• It's a curious problem, but using newpxtext with XeLaTeX doesn't make much sense anyway. – egreg Sep 12 '16 at 16:01
• In any case, small caps fonts should not have f-ligatures to begin with. – egreg Sep 12 '16 at 16:19
• I don't think it has f-ligatures, which might be why it omits the FI entirely. Why doesn't it make sense to use newpxtext with XeLaTeX, if I may ask? – Derek Sep 12 '16 at 18:17
• newpxtext uses legacy fonts, so you just get into problems if you use XeLaTeX with it. – egreg Sep 12 '16 at 19:09

(too long for a comment, hence posted as an answer)

It may be that you're not using an up-to-date version of the newpxtext package. The most recent version, as of early September 2016, is version 1.301, 2016/08/29.

Here's an MWE that shows that the fi ligature as well as the other f-ligatures are working with the latest version of newpxtext. (They are working with and without the option largesc.)

\documentclass{article}
\usepackage[largesc]{newpxtext}
\begin{document}
off fit fly office baffle infinite

\scshape off fit fly office baffle infinite
\end{document}


Incidentally, the f-ligatures provided by the newpxtext package aren't nearly as elegant as those of a "real" Palatino font, say, Palatino nova:

%% Compile with LuaLaTeX or XeLaTeX...
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Palatino nova}
\begin{document}
off fit fly office baffle infinite
\end{document}

• Interesting. I've verified that I have the most recent version of the package. When I try your MWE, all the ligatures are missing. I can only assume there must be something wrong with my TeX installation. – Derek Sep 11 '16 at 23:07
• Ah — it appears that if I compile my MWE with xelatex, the problem occurs. If I use pdflatex, it works correctly. – Derek Sep 11 '16 at 23:15
• @Derek - Do you have access to a Palatino text font on your system? If so, you may be better off loading the fontspec package and loading the text font via a \setmainfont instruction. – Mico Sep 12 '16 at 0:12
• I'm marking this correct since it pushed me to move off the newpxtext package and fully embrace fontspec. – Derek Sep 13 '16 at 19:04
• @Derek That code ought not compile at all with pdflatex! – cfr Sep 16 '16 at 3:23