章节标题页眉中的垂直间距相同

章节标题页眉中的垂直间距相同

我正在写一篇论文,我想修改回忆录类的章节标题样式。这是我用于章节标题定义的代码:

\chapterstyle{demo2}
\renewcommand*{\printchaptername}
{
    \centering\chapnamefont\MakeUppercase{\@chapapp}
}
\renewcommand*{\printchapternum}{\chapnumfont\thechapter\space}
\renewcommand*{\chaptitlefont}{\Huge\bfseries\boldmath\sffamily\center}
\renewcommand{\printchaptertitle}[1]{
     \hrule %makeuppercase removes the hrule already printed so explicitely added another
     \chaptitlefont\MakeUppercase{#1}

 }

我的一些章节标题跨越两行,有些仅跨越一行,就像这些图片一样:

在此处输入图片描述 在此处输入图片描述

问题 :无论文本的长度如何,如何才能使每个标题的两条水平线之间具有相同的垂直空间,并且垂直居中文本?

非常感谢您的帮助 !

编辑最小工作示例:

章节.sty:

\NeedsTeXFormat{LaTeX2e} 
\ProvidesPackage{style}[2019/06/27 Custom LaTeX style]



\chapterstyle{demo2}
\renewcommand*{\printchaptername}
{
    \centering\chapnamefont\MakeUppercase{\@chapapp}
}
\renewcommand*{\printchapternum}{\chapnumfont\thechapter\space}
\renewcommand*{\chaptitlefont}{\Huge\bfseries\boldmath\sffamily\center}
\renewcommand{\printchaptertitle}[1]{
\hrule
\chaptitlefont\MakeUppercase{#1}
 
}
 

主文本:

\documentclass{memoir}
\usepackage[utf8]{inputenc}
\usepackage{chapter}
\title{Same vertical spacing in chapter title header}
\author{wahouh}
\date{July 2020}

\begin{document}

\maketitle

\chapter{some title very long spanning over two lines }
\chapter{Conclusions}
\end{document}

答案1

这不是一个答案,但作为评论它太长了。

您提供的代码作为 MWE(尽管分为两部分)对我来说不起作用。我摆弄了一下,并生成了以下内容作为 MWE,尽管它需要一些整理。

% chapdemo2prob.tex  SE 552137

\documentclass{memoir}
\usepackage[utf8]{inputenc}
\usepackage{comment}

%\usepackage{chapter}  %%%% what is this???
%
%\NeedsTeXFormat{LaTeX2e} 
%\ProvidesPackage{style}[2019/06/27 Custom LaTeX style]
%
\chapterstyle{demo2}

\makeatletter
\renewcommand*{\printchaptername}%
{\centering\chapnamefont\MakeUppercase{\@chapapp}
}
\makeatother
\renewcommand*{\printchapternum}{\chapnumfont\thechapter\space}
\renewcommand*{\chaptitlefont}{\Huge\bfseries\boldmath\sffamily\center}
\renewcommand*{\chaptitlefont}{\Huge\bfseries\boldmath\sffamily\centering}
\renewcommand{\printchaptertitle}[1]{
\hrule
\vspace{0.5\baselineskip}
\chaptitlefont\MakeUppercase{#1}
}
 
\title{Same vertical spacing in chapter title header}
\author{wahouh}
\date{July 2020}

\begin{document}

\maketitle

\chapter{some title very long spanning over two lines }
\chapter{Conclusions}
\end{document}

这是您代码的一个版本,但作为单个文件。您至少应该在代码中使用\centering而不是\center。如果您提供不会导致 LaTeX 错误的 MWE,那将非常有帮助。

您的要求很复杂。必须先运行一次初始 LaTeX,存储每个章节标题水平线之间的间距。然后在第二次运行中取其中的最大值并调整所有章节标题的间距。我不会尝试这样做。--- GOM

相关内容