# xelatex printing two small ff in smallcaps font

I have used a font's capital letters to create a fake smallcap letters. The lowercase letters are just uppercase letters scaled at 70% and moved lower to match the base. Everything works great except when multiple small f's are in the same word. You can see the output in this case. Seems very weird to me. In my opinion, this should always give the correct shape for normal letters. Any idea what's causing this or how to solve this?

\documentclass{article}

\usepackage[math]{blindtext}
\usepackage{unicode-math}

\newcommand{\fakebold}{0.}
\newcommand{\fakestretch}{1.}
\newcommand{\scale}{1.}

\setmainfont[
FakeBold=\fakebold,
ItalicFont=CenturymodernTT-Italic.otf,
ItalicFeatures={FakeBold=.5},
BoldItalicFont=CenturymodernTT-Italic.otf,
SmallCapsFont={CenturymodernTT-SC.otf},
SmallCapsFeatures={
Letters=SmallCaps,
RawFeature=+smcp,
Scale=\scale,
FakeStretch=\fakestretch,
FakeBold=\fakebold
},
BoldFont=CenturymodernTT-Regular.otf,
BoldFeatures={
Scale=\scale,
SmallCapsFont=CenturymodernTT-SC.otf,
SmallCapsFeatures={
RawFeature=+smcp,
Scale=\scale,
FakeBold=3
},
FakeStretch=\fakestretch,
FakeBold=2
},
BoldItalicFeatures={FakeBold=2},
Scale=\scale,
FakeStretch=\fakestretch
]{CenturymodernTT-Regular.otf}

\begin{document}

\textsc{Binomial Coefficients Coef ficients Coef f icients}

\end{document}


• Did you try adding Ligatures=NoCommon to SmallCapsFeatures? Jul 15 at 6:36
• same issue persists Jul 15 at 12:19
• @Thérèse the reason disabling ligatures was not working was that ligatures were hard-mapped into the font. I removed that and the problem went away Jul 15 at 17:42