How can I change the alignment of a chapter/section/subsection heading? Preferably, I want this to be something I specify in the header, as this will be necessary for all headers in the document.
Asked
Active
Viewed 3.4k times
3 Answers
27
This can be done using the titlesec package.
Here's a compilable demonstration example:
\documentclass{book}
\usepackage{titlesec}
\newcommand*{\justifyheading}{\raggedleft}
\titleformat{\chapter}[display]
{\normalfont\huge\bfseries\justifyheading}{\chaptertitlename\ \thechapter}
{20pt}{\Huge}
\titleformat{\section}
{\normalfont\Large\bfseries\justifyheading}{\thesection}{1em}{}
\titleformat{\subsection}
{\normalfont\large\bfseries\justifyheading}{\thesubsection}{1em}{}
\usepackage[english]{babel}
\usepackage{blindtext}
\begin{document}
\Blinddocument
\end{document}
Now the headings are right aligned. I defined a macro \justifyheading. If you later wish to left-justify or to center, simply define \justifyheading to be \raggedleft respctively \centering.

Stefan Kottwitz
- 231,401
11
Just for completeness -- This can also be accomplished with the sectsty package:
\usepackage{sectsty}
\allsectionsfont{\raggedleft}
Mico
- 506,678
10
You could use a KOMA-Script-class and redefine \raggedsection.
\documentclass{scrbook}
\renewcommand*{\raggedsection}{\raggedleft}
\usepackage[english]{babel}
\usepackage{blindtext}
\begin{document}
\Blinddocument
\end{document}
lockstep
- 250,273
\usepackage[raggedleft]{titlesec}to the header. – eykanal Dec 06 '10 at 19:22\titleformat. I just had to add\raggedleftto section and subsection definition. – Celdor Oct 19 '17 at 08:56