我正在使用现有模板,需要将部分内容加粗,并将子部分缩进。我使用titlesec
包。
我的部分样式是这样的
\titleformat{\section}[block]{\Roman{section}.}{}{1em}{}
我需要大胆
我的小节风格是这样的
\titleformat{\subsection}[block]{\Roman{section}.\Roman{subsection}}{}{2em}{}
我需要从左边距缩进(罗马数字和“标题”)2em
一个多小时以来,我尝试了各种不同的解决方案,但似乎都没有用......有人能帮帮我吗?
答案1
如果我正确理解了你想要做的事情(顺便说一句,最好包含一个可编译的最小工作示例(MWE)您的问题,以便更容易地帮助您),以下代码应该可以工作:
\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}
输出如下:
请注意,该\titleformat
命令记录在titlesec
手册第 4 页(该texdoc titlesec
命令应打开文档)。语法如下:
\titleformat{⟨command⟩}[⟨shape⟩]{⟨format⟩}{⟨label⟩}{⟨sep⟩}{⟨before-code⟩}[⟨after-code⟩]
其中<command>
是您需要自定义的分段命令的名称。<sep>
是标签(在您的例子中是罗马数字)和标题之间的分隔,而不是左边距和标签之间的分隔。 代码<format>
允许您指定应用于整个标题(标签+标题)的样式。 您应该在此处放置类似 的命令\bfseries
。
编辑:根据@GonzaloMedina 的评论,我重新定义了命令\thesection
,并\thesubsection
确保任何命令\ref
都会产生罗马数字而不是阿拉伯数字的参考标签。