To address your more specific question, check out GilliusADF, which is a GPL license font based on Gill Sans from the Arkandis Digital Foundry (ADF). The folks at ADF have been working to make TeX packages for their fonts. Some are already on CTAN like BaskervaldADF (based on Baskerville), VenturisADF (based to Utopia), ElectrumADF (original design?), RomandeADF (original design?). Unfortunately, Gillius hasn’t been packaged for LaTeX yet, but in the meantime, you could download the opentype versions from the ADF website, and use them either with XeLaTeX, or run them through otfinst or autoinst to use them with pdflatex.
Au contraire, mon ami — URW Garamond does indeed contain the ffi and ffl ligatures. They occupy slots 30 and 31 respectively in their T1-encoded font tables.
In common with many typeface designs, URW Garamond splits the first f subglyph from the remaining fi or fl subglyphs in each ligature. You can see this in the rm
and sf
families, but not the tt
family where the designer has connected all subglyphs in each whole (see edit note, below). One mustn't simply assume that a ligature is not a single well-integrated type component simply because the full set of strokes comprising it are not completely connected. Font.com's recommendation is directed at cases where, e.g., the ffi and ffl ligatures are simply not available, and where, therefore, grafting a single f onto a trailing fi or fl might (subject to the quality of the kerning table) create a fairly unbalanced look. This is not the situation here. In this case, URW Garamond's designer has produced a well-integrated series of glyphs that should not be discarded simply because their various elements do not completely connect. These designs are very much part of URW Garamond's integrated look and feel. Your typeset works would suffer by excluding them.
Here's some code to help you check this out:
\documentclass{article}
\usepackage[urw-garamond]{mathdesign}
\usepackage[T1]{fontenc}
\usepackage{fonttable}
\begin{document}
\xfonttable{T1}{\rmdefault}{m}{n}\newpage
\xfonttable{T1}{\sfdefault}{m}{n}\newpage
\xfonttable{T1}{\ttdefault}{m}{n}\newpage
\end{document}
BTW, if you really want to force non-ligatures, a simple trick is to insert braces to keep your letters apart, e.g., of{}f{}icers. Apart from that, the microtype
package contains options to selectively disable just the ones you want. E.g.,
\DisableLigatures[?,!]{encoding = T1}
will inhibit ?‘ and !‘, but not fi, –, », etc. microtype
currently works under pdflatex and luatex but not, as far as I know, all that successfully with xelatex (there's a beta version out there but I haven't yet checked it out, mainly because everytime I do its website is down). Will's and Khaled's fontspec
package seems to provide control over ligatures at font load-time, but as I tend to stick to pdflatex (never in a million years could I bring myself to give up microtype
), and as fontspec
doesn't function in that environment, I'm still rather clueless about its detailed ins and outs. However, note that as URW Garamond is a Type1 font, fontspec
won't provide much assistance in your case.
EDIT:
Errg! I must learn to resist answering questions at 4am in the morning (Eastern Australian Time). Of course the sf
and tt
fonts printed by the code above are Computer Modern (or some such system-provided variants). They have nothing to do with URW Garamond. Nevertheless, except for confirming that I'm a klutz, everything else about all other aspects of my answer still stands.
Best Answer
If using
fontspec
you can switch off the contextual alternates:(Sorry I miss that you don’T want XeTeX, but I don’t delet this answer since it may help other searching for this question …)