我正在使用该titlesec
包进行切片。我希望在将其放入以下字段\clearpage
之前有一个\part
format
\titleformat{command}[shape]{format}{label}{sep}{before-code}{after-code}
然后它按照我的要求进行操作,但是如果文档的最前面部分(顺便说一下,这是命令后的第一个内容\maketitle
),它将插入一个空白页。这是因为,引用titlesec 文档,
{format}
是应用于整个标题(标签和文本)的格式。此部分可以包含垂直材料(以及带有某些形状的水平材料),这些材料排版在标题上方的空间之后
请注意“标题上方空格之后”。因此\clearpage
不应将其放入该format
字段。
我可以使用以下方法做我想做的事情,但要使用部分,而不是部分
\newcommand{\sectionbreak}{\clearpage}
我知道还有其他类似的命令,例如subsubsection
或subsection
,但我找不到一个part
有效的命令。我该怎么做?
\documentclass{article}
\usepackage{titlesec}
\titleformat{\part}[display]{\clearpage\itshape\rmfamily\raggedright}{\LARGE Part \thepart}{0mm}{\Huge}{}
\titlespacing*{\part}{0mm}{30mm}{30mm}
\begin{document}
\part{Part test}
test text
\end{document}
答案1
更合适的方法是\clearpage
插入每一个 \part
重新定义\part
如下:
\let\oldpart\part% Store \part in \oldpart
\renewcommand{\part}{\clearpage\oldpart}% Insert \clearpage before every \part
用这个后指定。\titleformat
\part
答案2
最简单的解决方案似乎是声明\part
属于top
某一类;然后您可以根据需要使用\partbreak
和定义它:\clearpage
\documentclass{article}
\usepackage{titlesec}
\titleformat{\part}[display]
{\itshape\rmfamily\raggedright}{\LARGE Part \thepart}{0mm}{\Huge}{}
\titlespacing*{\part}{0mm}{30mm}{30mm}
\titleclass{\part}{top}
\newcommand\partbreak{\clearpage}
\begin{document}
\part{Part test}
test text
\part{Part test}
test text
\end{document}