[Tex/LaTex] Creating a bold and indented title.

boldindentationsectioningtitlesec

Im working with an existing template and I need to make my sections bold and my subsections indented. I use the titlesec package.

My Section style is this

\titleformat{\section}[block]{\Roman{section}.}{}{1em}{} 

Which I need to be bold

And my subsection style is this

\titleformat{\subsection}[block]{\Roman{section}.\Roman{subsection}}{}{2em}{} 

Which I need to indent (the roman numeral and the "title") 2em from the left margin

I have tried various different solutions for over an hour now but none of them seem to work… Could anyone help me out?

Best Answer

If I have correctly understood what you are trying to do (by the way, it would be good to include a compilable minimal working example (MWE) to your questions so that it is easier to help you), the following code should work:

\documentclass{article}
\usepackage{titlesec}

\renewcommand\thesection{\Roman{section}} 
\renewcommand\thesubsection{\thesection.\Roman{subsection}} 
\titleformat{\section}[block]{\bfseries}{\thesection.}{1em}{} 
\titleformat{\subsection}[block]{\hspace{2em}}{\thesubsection}{1em}{}

\begin{document}

\section{A section}

\subsection{A subsection}\label{subsection1}

\subsection{Another subsection}
cf \ref{subsection1}

\end{document}

Here is the ouput:

enter image description here

Note that the \titleformat command is documented on page 4 of the titlesec manual (the texdoc titlesec command should open the documentation). The syntax is as follows:

\titleformat{⟨command⟩}[⟨shape⟩]{⟨format⟩}{⟨label⟩}{⟨sep⟩}{⟨before-code⟩}[⟨after-code⟩]

where <command> is the name of the sectioning command you need to customiz. <sep> is the separation between the label (in your case the roman numeral) and title, not between the left margin and the label. The <format> code allows you to specify the style applied to the whole heading (label+title). This is were you should put commands like \bfseries.

Edit: following @GonzaloMedina's comment, I have redefined the commands \thesection and \thesubsection to make sure that any \ref will produce the reference label in roman and not arabic numerals.