包含同一页上方 \chapter 的图表

包含同一页上方 \chapter 的图表

在一本书中,使用 book documentclass,我正在排版,我想在 \chapter 标题上方包含一个图形。然而,这变得很难。使用以下代码:

\chapter{Uppväxt}

\begin{figure}[ht]
\includegraphics[width=\textwidth]{bilder/hus.jpg}
\end{figure}

\noindent
\lipsum

产生以下结果: 章节下方的图形。

按照的命令,将图像放置在\figure上方\chapter会导致图像被放置在上一页,这对于本书的其余部分是理想的。将 的选项更改为会导致图像被包含在下一页中。似乎没有其他定位选项组合似乎也有帮助。\clearduble\chapter\figure[t]

有人能想出一种将图形放在章节上方的方法吗?

答案1

该图像似乎是章节标题设计的一部分,因此最自然的位置是添加它\@makechapterhead(或其他类别中的等效命令)。

在此处输入图片描述

\chappic如果该命令非空,则会添加一个带有名称的图像。

\documentclass{book}
\usepackage{graphicx}
\makeatletter

\def\@makechapterhead#1{%
  \ifx\chappic\@empty
  \vspace*{50\p@}%
\else
  \vspace*{5\p@}% was 5
    \centerline{\includegraphics{\chappic}}%<<<<
\fi
  {\parindent \z@ \raggedright \normalfont
    \ifnum \c@secnumdepth >\m@ne
      \if@mainmatter
        \huge\bfseries \@chapapp\space \thechapter
        \par\nobreak
        \vskip 20\p@
      \fi
    \fi
    \interlinepenalty\@M
    \Huge \bfseries #1\par\nobreak
    \vskip 40\p@
  }}
\makeatother
\newcommand*\chappic{}

\begin{document}

\renewcommand*\chappic{house}
\chapter{house}

text ... text ... text ... text ... text ... text ... text ... text ... 
text ... text ... text ... text ... text ... text ... text ... text ... 
text ... text ... text ... text ... text ... text ... text ... text ... 

\renewcommand*\chappic{}
\chapter{no house}

text ... text ... text ... text ... text ... text ... text ... text ... 
text ... text ... text ... text ... text ... text ... text ... text ... 
text ... text ... text ... text ... text ... text ... text ... text ... 


\end{document}

相关内容