Take a look at the following list:

  • \textit, \it, \emph, \itshape, \mathit
  • \textbf, \bf, \bfseries, \mathbf
  • ...

One might say, for instance, that:

  • \mathbf and \mathit are for math mode, while the others are for normal mode.


  • \bf and \it are for plain TeX and obsolete, while the others are for LaTeX.

However, my real question is: What was the need to redefine a command? Couldn't the normal mode commands be carried over to the math mode, or plain TeX commands be carried over to LaTeX?

PS: Perhaps there are other differences which I don't know. Please mention them in your answer, too.


2 Answers 2

  • \bf and \it load single fonts and they do not nest; writing \bf\it does not give you bold italic.

  • \bfseries and \itshape select font axes in LaTeX. You can use them together to select bold italic, for example.

  • \textbf and \textit are the command forms of the above, with the added feature of inserting italic correction automatically.

  • \emph is the semantic command for giving emphasis to text. (LaTeX lacks an analogy for HTML's <strong>.) This is the reason that \bf and \it are not recommended as names for font-switching, and why the LaTeX forms are longer to type—because they're not semantic, they lack meaning in a text; all they say is ‘select a font’ but whether that's for added meaning or just decoration is unknown.

  • \mathbf and \mathit load fonts for use in maths, which might be the same fonts as used for \textbf and \textit but not necessarily. Note that combining font shapes doesn't make much sense in maths, so like \bf and \it these commands do not act orthogonally: one will cancel out the other.

  • 13
    Just to add: If you want to put emphasis on something use the \emph macro, not \textit even when the result seems identical. One difference is that \emph nests properly: e.g. \emph{This \emph{text} is important} will make text again different so that it sticks out. Also, depending on the style, \emph could be coloring the text for an online PDF but make it bold for a large-print copy for the visual impaired. Feb 16, 2011 at 11:16
  • One could define, say, \bf so that \it is redefined inside of it. I'm not sure if that was part of the question ("…or plain TeX commands be carried over to LaTeX?")
    – morbusg
    Feb 16, 2011 at 11:52
  • 1
    +1. Great answer. Using the keywords in you answer, I found what’s wrong with \bf, \it, etc.?. Also, I found this page on italic correction. It specially gives an example where LaTeX commands do not provide propoer italic correction. Feb 16, 2011 at 12:40
  • 3
    The last point could be misunderstood: \mathbf and \mathit load (similar to \bf and \if) specific fonts. You can't combine them like \textbf and \textit. \mathbf{\mathit{a}} will not give a bold italic "a" but an italic "a" (the inner command wins). Feb 16, 2011 at 13:22
  • 3
    I just ran into this issue: \mathbf does not make Greek letters bold (details omitted). More info is available in Setting bold Greek letters in LaTeX. Feb 17, 2011 at 9:45

Two more differences between \mathit{} and \textit{} are:

  1. \textit{} is allowed in both math and regular environment but \mathit{} is allowed only in math environment;

  2. The \textit command provides a regular environment even if it is wrapped by a math environment. Consequently: $\textit{text1^{text2}}$ gives an error, but $\mathit{text1^{text2}}$ is valid. Moreover, the output of $\textit{a b}$ contains a space between a and b, but the output of $\mathit{a b}$ does not.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .