5

In the book documentclass how can you make the chapters be in capital letters?

For example:

Chapter 1 --> CHAPTER 1

etc...

Adam
  • 4,684
  • In order to make a sequence of capital letters look decent, it's really important to apply some letterspacing, say with the help of the microtype package. – Mico Feb 28 '16 at 19:49

2 Answers2

5

The book document class has a low-level macro named \chaptername, but what's used in the typesetting of chapter headers is \@chapapp. It's best to leave \chaptername alone and modify \@chapapp, by applying (a) \MakeUppercase to its argument and (b) a modest amount of letter-spacing to the all-caps string; without some letter-spacing, strings of all-caps letters can easily look very "blocky" and dense.

enter image description here

\documentclass{book}
\usepackage{microtype} % for '\textls' macro

\makeatletter % default is "\newcommand\@chapapp{\chaptername}"
\renewcommand\@chapapp{\textls[40]{\MakeUppercase{\chaptername}}}
\makeatletter

\begin{document}
\chapter{Good morning}
\end{document}

Addendum: If your document has one or more chapter-level appendices, and assuming you'll want the prefix string "Appendix" to be converted to uppercase letters as well, you will need to provide the following instructions after \appendix:

\makeatletter 
\renewcommand\@chapapp{\textls[40]{\MakeUppercase{\appendixname}}}
\makeatletter
Mico
  • 506,678
  • It works but I get this error: Package microtype Error: Letterspacing currently doesn't work with xetex. – Adam Feb 28 '16 at 21:15
  • @Adam - (It would have been helpful to mention earlier that you use XeLaTeX.) Sadly, microtype doesn't "do" letterspacing under XeLaTeX -- but it does work under LuaLaTeX; is that an option for you. If you're committed to XeLaTeX, I'm afraid letterspacing isn't available to you via the \textls macro. – Mico Feb 28 '16 at 21:34
  • Don't worry, I just removed the letterspacing and everything works fine . :) – Adam Feb 28 '16 at 21:40
2

A low level way of doing this is to simply have

\renewcommand\chaptername{CHAPTER}

In your preamble:

\documentclass{book}

\renewcommand\chaptername{CHAPTER}

\begin{document}

\chapter{Hello World}

\end{document}

enter image description here

Au101
  • 10,278