我有一份回忆录文档,希望章节标题后的文本块开头的高度相同。与章节标题长度或节标题无关。
梅威瑟:
\documentclass{memoir}
\begin{document}
\chapter{Chapter with number}
Text starts here
\chapter{Chapter with number and title exceeds one line}
Text starts here
\chapter{Chapter with number and title exceeds one line}
\section{and section below}
Text starts here
\chapter*{Chapter without number}
Text starts here
\end{document}
也许我应该在某些环境中包装章节和部分。我试过了minipage
,但它会破坏章节标题间距。
答案1
使用minipage
是一个不错的选择。如果效果不佳,您可以在其中设置段落,将其\parbox[<pos>][<height>]{<width>}{<stuff>}
设置<pos>
为顶部,固定在\linewidth
,然后指定一个<height>
可以容纳所有段落的内容。
以下是一个例子:
\documentclass{memoir}
\usepackage{lipsum}
\setlength{\parindent}{0pt}
\newlength{\parboxheight}
\setlength{\parboxheight}{25\baselineskip}
\begin{document}
\parbox[t][\parboxheight]{\linewidth}{%
\strut
\chapter{Chapter with number}
\strut
}
\lipsum[1]
\clearpage
\parbox[t][\parboxheight]{\linewidth}{%
\strut
\chapter{Chapter with number and title exceeds one line}
\strut
}
\lipsum[1]
\clearpage
\parbox[t][\parboxheight]{\linewidth}{%
\strut
\chapter{Chapter with number and title exceeds one line}
\section{and section below}
\strut
}
\lipsum[1]
\clearpage
\parbox[t][\parboxheight]{\linewidth}{%
\strut
\chapter*{Chapter without number}
\strut
}
\lipsum[1]
\end{document}
答案2
如果您仍然坚持使用memoir
课程,那么您可以使用titlesec
一个名为的包选项,[rigidchapters]
它可以完成您想要的操作。
例子:
\documentclass{memoir}
\usepackage[rigidchapters]{titlesec}
\titleformat{\chapter}[display]{\bfseries\Large\setlength{\parskip}{0 mm}}{Chapter \ \thechapter}{
\dimexpr25mm-\baselineskip}{}[]
\titlespacing{\chapter}{0 mm}{0 mm}{38 mm}
\setlength{\parindent}{0 mm}
\begin{document}
\chapter{Chapter with number}
Text starts here
\chapter{Chapter with number and title exceeds one line}
Text starts here
\chapter{Chapter with number and title exceeds one line}
\section{and section below}
Text starts here
\chapter*{Chapter without number}
Text starts here
\end{document}
注意:\section
继承自章节。因此,如果您希望章节包含在间距中,则应该对其进行硬编码。
另一点是:您可以使用另一个类似的类,scrbook
它可以给出相同的结果。
\documentclass{scrbook}
\RedeclareSectionCommand[afterskip=35mm]{chapter}
\makeatletter
\renewcommand*{\chapterlinesformat}[3]{%
\parbox[t][0pt][t]{\linewidth}{\raggedchapter\@hangfrom{#2}{#3}}%
}
\makeatother
\begin{document}
\chapter{Chapter with number}
Text starts here
\chapter{Chapter with number and title exceeds one line}
Text starts here
\chapter{Chapter with number and title exceeds one line}
\section{and section below}
Text starts here
\chapter*{Chapter without number}
Text starts here
\end{document}