7

I am using the Frutiger font as the sans serif font in my document. It is invoked by

\renewcommand{\sfdefault}{pfr}

However this font is too bold for my taste. There is a ligher version available. I would like {\sf Test} to be rendered as

{\fontfamily{pfr}\fontseries{l}\selectfont Test}

and {\sf \textbf{Test}} to be rendered as

{\fontfamily{pfr}\fontseries{m}\selectfont Test}

(that is, the normal variant is now used as the bold typeface). How do I achieve this? I don't know the proper commands to so this and I suspect my \renewcommand is not the correct way of switching to Frutiger in the first place.

lockstep
  • 250,273
Ben
  • 2,609

1 Answers1

6

Remark: don't use \sf command, better keep with \sffamily. The following works only with this one. Putting the following by the end of your preamble should work, it surely does for some font that provides both l and m series:

\makeatletter
\expandafter\g@addto@macro\csname sffamily \endcsname{\def\bfdefault{m}}
\makeatother

The command \g@addto@macro re-defines the macro \sffamily to locally re-define bf series to m. Usage of \csname is necessary since \sffamily is a protected command and the command itself ends with an extra space. The \makeat... commands makes the commands with @ in name accessible. (Thanks to egreg for explanations and corrections.)

yo'
  • 51,322
  • may I ask why did you delete your answer to my question? Your answer works perfectly! (I'm just experimenting with egreg's answer, too.) – nnunes Jan 20 '13 at 15:44
  • @NunoNunes that answer is malacious, try \sffamily this \rmfamily that. The egreg's one should work better. – yo' Jan 20 '13 at 16:29