如何强制章节首页的文本块与其他页面对齐?

如何强制章节首页的文本块与其他页面对齐?

各位技术人员大家好,

尝试使用回忆录类排版书籍时,我遇到了一个令人沮丧的问题。我设计了一个不错的章节和标题样式,但我将其分解为以下 MWE:

% !TEX TS-program =xelatex
% !TEX encoding = UTF-8 Unicode
\documentclass[12pt,a5paper]{memoir}

\usepackage{lipsum}
\usepackage[ngerman]{babel}

\settypeblocksize{160mm}{100mm}{}
\setulmargins{*}{25mm}{*}
\setlrmargins{25mm}{*}{*} 
\setheaderspaces{*}{*}{0.7}
\checkandfixthelayout 
\flushbottom

\linespread{1.2}
\setlength{\parskip}{0\baselineskip}

\begin{document}
\chapter{Nice Chapter}
\section*{Good Section}
\lipsum*
\end{document}

现在第一页上多出了一行文本,导致文本块没有正确排列。

(添加红框以强调。)

如何强制第一页与其他页面对齐?我可以调整哪些距离来实现此目的?

删除时,文本块实际上会对齐设置类型块大小命令,但文本块没有正确的尺寸。

MWE 不匹配的文本块

期望的输出看起来更像这样:

那更好

“好”的例子是通过删除设置类型块大小,但正如您所见,其余布局完全不同(这不是我们所希望的。)

答案1

在您的 MWE 更改中关注 @barbarabeeton

\checkandfixthelayout

\checkandfixthelayout[lines]

这将确保文本高度(略微)调整,以使正文字体中的整数行数恰好适合高度。有关此内容的更多信息,请参阅回忆录手册(> texdoc memoir)。

答案2

在我看来,最好使用memoir自己的界面而不是\linespread

这似乎奏效了

\setSingleSpace{1.2}
\SingleSpace

\settypeblocksize{160mm}{100mm}{}
\setulmargins{*}{25mm}{*}
\setlrmargins{25mm}{*}{*} 
\setheaderspaces{*}{*}{0.7}
\checkandfixthelayout 
\flushbottom

我也通过添加这些行来验证(绘制文本块)

\pagestyle{showlocs}
\aliaspagestyle{chapter}{showlocs}

然后将 PDF 导入此文档:

\documentclass[a4paper,landscape]{memoir}
\usepackage{pdfpages}
\begin{document}
\includepdf[pages=-,nup=2x1]{imf.pdf}
\end{document}

在此处输入图片描述

答案3

您可以添加一些可拉伸性以\baselineskip允许 TeX 调整以适合页面:

\setlength\baselineskip{\the\baselineskip plus 0.5pt minus 0.5pt}

这将允许线之间的距离\baselineskip拉伸至0.5pt或收缩至0.5pt。我测试过,这些值似乎足够了。

在此处输入图片描述

另外,我将的重新定义\baselineskip放在一个\AtBeginDocument钩子中,因为它的定义发生在的某个地方\begin{document}

% !TEX TS-program =xelatex
% !TEX encoding = UTF-8 Unicode
\documentclass[12pt,a5paper]{memoir}

\usepackage{lipsum}
\usepackage[ngerman]{babel}

\settypeblocksize{160mm}{100mm}{}
\setulmargins{*}{25mm}{*}
\setlrmargins{25mm}{*}{*} 
\setheaderspaces{*}{*}{0.7}
\checkandfixthelayout 
\flushbottom

\linespread{1.2}
\setlength{\parskip}{0\baselineskip}

\AtBeginDocument{%
  \setlength\baselineskip{\the\baselineskip plus 0.5pt minus 0.5pt}}

\begin{document}
\chapter{Nice Chapter}
\section*{Good Section}
\lipsum*
\end{document}

相关内容