亲爱的 LaTeX 爱好者们,
几天来我一直在尝试解决一个问题,我担心自己仍然需要几天甚至几个月的时间才能找到答案——如果我能找到答案的话。所以我非常感谢你的帮助。
我的问题:我已根据需要调整了章节、节等标题的定义——现在它们看起来就像我希望它们用于我正在处理的文本一样。我的一个调整是,我改变了标题的颜色。
但是这种颜色的改变有一个不良的副作用:现在可能会发生这样的情况,即在页面的最底部只看到一个章节或小节的孤独的标题,之后的第一行文本只出现在下一页。
我曾尝试写一个最小的例子:
\documentclass[12pt,fleqn,twoside]{report}%
\usepackage[utf8]{inputenc}%
\usepackage[T1]{fontenc}%
\usepackage[ngerman,english]{babel}%
\usepackage{color}%
\usepackage[varumlaut]{yfonts}% Oldstyle headlines
\usepackage{blindtext}%
%Adapted chapter headline
\makeatletter
\def\@makechapterhead#1{%
\vspace*{-20\p@}%
{\parindent \z@ \raggedright
\large\textsc{\@chapapp\space \thechapter}
\par\nobreak
\interlinepenalty\@M
\LARGE\color{blue} \textfrak{#1}\par\nobreak
% \LARGE \textfrak{#1}\par\nobreak
\vskip 20\p@
}}
\def\@makeschapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \raggedright
\interlinepenalty\@M
\LARGE\color{blue} \textfrak{#1}\par\nobreak
% \LARGE \textfrak{#1}\par\nobreak
\vskip 40\p@
}}
\makeatother
%Adapted headlines of section and subsection
\makeatletter%
\renewcommand\section{%
\@startsection {section}{1}{\z@}%
{-3.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\color{blue}\large\frakfamily}}%
% {\large\frakfamily}}%
%
\renewcommand\subsection{%
\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
{\color{blue}\frakfamily}}%
% {\frakfamily}}%
\makeatother%
\begin{document}
\chapter{The chapter}
\blindtext[2]\\%
text\\
text\\
text\\
text\\
text\\
text\\
text\\
text\\
text\\
text\\
\section{The section}
\subsection{The subsection}
\blindtext
\end{document}
但它并不完美:我无法让它只显示一个部分标题,后面紧接着文本,中间会有一个分页符。但我设法在部分标题和子部分标题之间设置了一个分页符。
到目前为止,章节标题从来都不是问题——可能是因为它们的定义也完全不同。出于实验目的,我还给出了没有颜色定义的线条——如果您使用它们,文本的外观会略有改变,即使您添加一些“text\\”行,问题也无法重现。
我的问题:
- 为什么标题的颜色会改变文本的外观?
- 如果在(节/小节/小子节/段落)标题后没有分页符,我该怎么办?
有谁能够帮助我?
答案1
避免在 vmode 中添加颜色 whatsit 节点
\renewcommand\subsection{%
\@startsection{subsection}{2}{\z@}%
{-3.25ex\@plus -1ex \@minus -.2ex}%
{1.5ex \@plus .2ex}%
{\everypar{\color{blue}\frakfamily}}%