# Why won't this header have proper small caps?

If I'm correct, small caps means if I had a word like, say, WORD, the W would be bigger than the other letters slightly, right?

I have the following LaTeX code:

\newcommand{\header}[1]{
\begin{changemargin}{-0.5in}{-0.5in}
\bf\scshape\textsc{#1} \\
\lineover
\end{changemargin}
}


However, it won't display. It's just bolded, non-caps for the headers.

Word is Word.

The differences between \sc, \scshape and textsc is confusing me too.

-

No in a small caps (or more accurately caps and small caps) the font has upper and lower case letters but the letter form of the lower case letters are (smaller) capitals. So WORD would look like WORD but Word would look like WORD in which the W was larger than ORD.

However not all font families are available in small caps shape so in some case LaTeX will substitute the font requested (you get a warning about that in the log file).

\bf\scshape\textsc{#1}


\bf is a deprecated command (not defined in the core LaTeX format) which would be better written as \normalfont\bfseries that sets the current font to bold for the rest of the current scope. \scshape then requests that the shape is changed to small caps (still bold) then \textsc{...} asks for small caps again. the \text... forms limit the scope of the font change to their argument. so \bfseries makes everything bold until the next } or \end{___} whereas \textbf{word} just makes word bold.

In article class, with the default cm fonts

 \bf\scshape\textsc{word}


produces a log of

LaTeX Font Warning: Font shape OT1/cmr/bx/sc' undefined
(Font)              using OT1/cmr/bx/n' instead on input line 17.


Which tells you that bold extended bx small caps sc is not available in the 7bit OT1 Computer Modern Roman cmr family and that normal n shape has been substituted.

Try it without the bold and you will get small caps.

-

For changing the font stype, see this.

So if I use

\newcommand{\header}[1]{%
\begin{changemargin}{-0.5in}{-0.5in}%
\textsc{#1} \\
\lineover
\end{changemargin}%
}
...