Level of "boldness" changeable?

This is font-specific and is produced and fixed at production time. That is, the way to change the "boldness" would be to switch to a different font series.

There is at least one possible alternative by means of the contour package. It duplicates a piece of text a certain number of times at a fixed length away from the origin, thereby creating the illusion of being slightly more bold. The intent of the package is to provide a contour around text of a chosen colour. Including this package with the outline package option, together with \usepackage[T1]{fontenc} yields the desired output. If you choose a black contour, you get the following:

\documentclass{article}
\usepackage[T1]{fontenc}% http://ctan.org/pkg/fontenc
\usepackage[outline]{contour}% http://ctan.org/pkg/contour
\usepackage{xcolor}% http://ctan.org/pkg/xcolor
\begin{document}
\renewcommand{\arraystretch}{1.5}
\contourlength{0.1pt}
\contournumber{10}%
\begin{tabular}{lc}
  \verb|bold| & bold \\
  \verb|\textbf{bold}| & \textbf{bold} \\
  \verb|\contourlength{0.1pt}| & \\
  \verb|\contournumber{10}| & \\
  \verb|\contour{black}{bold}| & \contour{black}{bold}
\end{tabular}
\end{document}

bold contours

The first bold is typeset in normal font. The second bold is typeset in bfseries (using \textbf{...} rather than {\bf ...}, by the way - see l2tabu). The third bold is typeset using contour with the settings

  • \contournumber{10}: reprint text 10 times;
  • \contourlength{0.1pt}: offset text reprints by 0.1pt.

The copies are evenly distributed around the original. In more detail from the countour package documentation:

The used technique is quite simple. By default, in a circle around the original text position the same text is printed evenly distributed 16, 32, or a given number times. The default radius for the circle is 0.03 em. If requested and supported by the used driver (...) a real outline can be choseninstead of text copies.


The common values for font series are (taken from fntguide):

m   Medium
b   Bold
bx  Bold extended
sb  Semi-bold
c   Condensed

m is the default font weight, bx is the default bold series. The c and sb weights do not exist in Computer Modern and Latin Modern. But it is a little known fact that the nonextended bold series, b, is also available for the roman family in these fonts.

You would switch to this series with

\fontseries{b}\selectfont Text…

and make it the default bold series (such that it affects \bfseries and \textbf) with

\renewcommand{\bfdefault}{b}

However, there is no similar font weight defined for the sans serif CM/LM font family.

Fortunately, Latin Modern comes to rescue with its Latin Modern Sans Demi Cond font, available in regular and oblique shapes. This font is somewhat more dense than the normal one, but because of that it also looks heavier. You can access this font through the sbc font weight, which can be used just as b above. If you use XeLaTeX or LuaLaTeX, you can also select this font by name with fontspec.

And to show all the fonts:

Example

\documentclass{article}

\usepackage[T1]{fontenc}
\usepackage{lmodern}

\newcommand{\test}[2]{%
  \makebox[2.5cm][l]{#2:} {\fontseries{#1}\selectfont The quick brown fox\dots}\par}

\begin{document}

Roman font family:

\test{m}  {Medium}
\test{b}  {Bold}
\test{bx} {Bold extended}

\null\par

\sffamily
Sans serif font family:

\test{m}  {Medium}
\test{sbc}{Sans Demi Cond}
\test{bx} {Bold extended}

\end{document}

If you use a font other than Computer Modern or Latin Modern, you can check for the font weights mentioned before or examine the list of font files/font documentation.


Here's an option with xfakebold:

enter image description here

\documentclass{article}

\usepackage{xfakebold}

\newcommand{\fbseries}{\unskip\setBold\aftergroup\unsetBold\aftergroup\ignorespaces}
\makeatletter
\newcommand{\setBoldness}[1]{\def\fake@bold{#1}}
\makeatother

\begin{document}

This is some regular text.

% Default boldness = 0.3
This is some {\fbseries fake bold} text.

\setBoldness{0.5}%
This is some {\fbseries fake bolder} text.

\setBoldness{1}%
This is some {\fbseries fake boldest} text.

\end{document}

Tags:

Fonts

Bold