Endgültige Version

Endgültige Version

Ich versuche, auf der Teiltitelseite meines Berichts ein Bild einzufügen, sodass es so aussieht, aber auch im Inhaltsverzeichnis korrekt angezeigt wird:

\clearpage
\newpage
{\pagestyle{empty} \enlargethispage{10\baselineskip}
{\huge\textbf{Part I: Lorem Ipsum}}\\
\noindent\rule{\textwidth}{0.4pt}
\begin{center}
\includegraphics[width=\textwidth]{figures/part_1_title.pdf}
\end{center}
\clearpage}
\newpage

Eine ähnliche Frage wurde gestelltHier, aber bei mir \printparttitleerzeugt das einen Fehler.

Weiß jemand, wie das geht?

Eine ähnliche Frage wurde in einem anderen Forum gestellt:Hier.

\partIch habe versucht, die Definition aus der Datei zu ändern report.cls, damit der Titel des Teils anders aussieht, aber es hat nicht funktioniert. (Ich brauche den Platz für das Bild).

So sieht es aus:
Teil I
Lorem Ipsum

Wie es aussehen soll
Teil I: Lorem Ipsum die durch diesen Code erhalten wird:

{\pagestyle{empty} \enlargethispage{10\baselineskip}
{\huge\textbf{Part I: Lorem ipsum}}\\
\noindent\rule{\textwidth}{0.4pt}
\begin{center}
\includegraphics[width=\textwidth]{figures/PartI_Loerm.pdf}
\end{center}

Hat jemand eine Idee?

Antwort1

Fügen Sie dem Befehl den Bildsatz hinzu \@endpart:

\makeatletter
\newcommand{\imagepart}[1]{\def\@theimagepart{#1}\part}
\def\@endpart{%
  \par\medskip
  \hrule
  \begin{center}
  \includegraphics[width=\textwidth]{\@theimagepart}
  \end{center}
  \vfil\newpage
  \if@twoside
    \if@openright
      \null
      \thispagestyle{empty}%
      \newpage
    \fi
  \fi
  \if@tempswa
    \twocolumn
  \fi}
\makeatother

Vollständiges Beispiel (die demoOption gilt nur für das Beispiel)

\documentclass{report}
\usepackage[demo]{graphicx}
\makeatletter
\newcommand{\imagepart}[1]{\def\@theimagepart{#1}\part}
\def\@endpart{%
  \par\medskip
  \hrule
  \begin{center}
  \includegraphics[width=\textwidth]{\@theimagepart}
  \end{center}
  \vfil\newpage
  \if@twoside
    \if@openright
      \null
      \thispagestyle{empty}%
      \newpage
    \fi
  \fi
  \if@tempswa
    \twocolumn
  \fi}
\makeatother

\begin{document}
\imagepart{figures/part_1_title.pdf}{Part title}
\end{document}

Bildbeschreibung hier eingeben

Eine mögliche Neudefinition auch von \@part, mit einigen geringfügigen Änderungen an \@endpart, um keine Zeilenumbrüche im Titel zu haben.

\documentclass{report}
\usepackage[demo]{graphicx}
\makeatletter
\newcommand{\imagepart}[1]{\def\@theimagepart{#1}\part}
\def\@endpart{%
  \par\vskip12pt\hrule\vskip12pt
  {\centering
   \includegraphics[width=\textwidth]{\@theimagepart}\par}
  \vfil\newpage
  \if@twoside
    \if@openright
      \null
      \thispagestyle{empty}%
      \newpage
    \fi
  \fi
  \if@tempswa
    \twocolumn
  \fi}
\def\@part[#1]#2{%
  \ifnum \c@secnumdepth >-2\relax
    \refstepcounter{part}%
    \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
  \else
    \addcontentsline{toc}{part}{#1}%
  \fi
  \markboth{}{}%
  {\centering
   \interlinepenalty \@M
   \normalfont
   \ifnum \c@secnumdepth >-2\relax
     \huge\bfseries \partname\nobreakspace\thepart: 
   \fi
   #2\par}
  \@endpart}

\makeatother

\begin{document}
\imagepart{figures/part_1_title.pdf}{Part title}
\end{document}

Bildbeschreibung hier eingeben

Wenn Sie den Teiletitel nach oben verschieben möchten, müssen Sie \vfilin der Definition von das ändern \part, zum Beispiel durch Hinzufügen von

\renewcommand\part{%
  \if@openright
    \cleardoublepage
  \else
    \clearpage
  \fi
  \thispagestyle{plain}%
  \if@twocolumn
    \onecolumn
    \@tempswatrue
  \else
    \@tempswafalse
  \fi
  \null\vspace{\stretch{1}}
  \secdef\@part\@spart}

und wenn \vfilSie bei der Neudefinition von in \@endpartändern, \vspace{\stretch{2}}haben Sie unten doppelt so viel Platz wie oben.


Endgültige Version

Links im Bild das Ergebnis \imagepart, rechts Ihr Wunsch.

\documentclass{report}
\usepackage[demo]{graphicx}
\makeatletter
\newcommand{\imagepart}[1]{\def\@theimagepart{#1}\part}
\def\@endpart{%
  \par\vskip12pt\hrule\vskip12pt
  {\centering
   \includegraphics[width=\textwidth]{\@theimagepart}\par}
  \vfil\newpage
  \if@twoside
    \if@openright
      \null
      \thispagestyle{empty}%
      \newpage
    \fi
  \fi
  \if@tempswa
    \twocolumn
  \fi}
\renewcommand\part{%
  \if@openright
    \cleardoublepage
  \else
    \clearpage
  \fi
  \thispagestyle{empty}%
  \if@twocolumn
    \onecolumn
    \@tempswatrue
  \else
    \@tempswafalse
  \fi
  \null\vspace{-2\baselineskip}
  \secdef\@part\@spart}
\def\@part[#1]#2{%
  \ifnum \c@secnumdepth >-2\relax
    \refstepcounter{part}%
    \addcontentsline{toc}{part}{\thepart\hspace{1em}#1}%
  \else
    \addcontentsline{toc}{part}{#1}%
  \fi
  \markboth{}{}%
  {\raggedright
   \interlinepenalty \@M
   \normalfont
   \ifnum \c@secnumdepth >-2\relax
     \huge\bfseries \partname\nobreakspace\thepart: 
   \fi
   #2\par}
  \@endpart}

\makeatother

\begin{document}
\imagepart{figures/part_1_title.pdf}{Part title}

\clearpage
\newpage
{\pagestyle{empty} \enlargethispage{10\baselineskip}
{\huge\textbf{Part I: Lorem Ipsum}}\\
\noindent\rule{\textwidth}{0.4pt}
\begin{center}
\includegraphics[width=\textwidth]{figures/part_1_title.pdf}
\end{center}
\clearpage}
\newpage

\end{document}

Bildbeschreibung hier eingeben

Erweiterung 2022

Wie fügt man einen Beschreibungstext unter dem Bild hinzu? Hier ist eine Möglichkeit.

\documentclass{report}
\usepackage{graphicx}

\makeatletter
\newcommand{\imagepart}[2]{%
  \def\@theimagepart{#1}%
  \def\@thecaptionpart{#2}%
  \part
}

\def\@endpart{%
  \par\medskip
  \hrule
  \begin{center}
  \includegraphics[width=\textwidth]{\@theimagepart} \\
  \@thecaptionpart
  \end{center}
  \vfil\newpage
  \if@twoside
    \if@openright
      \null
      \thispagestyle{empty}%
      \newpage
    \fi
  \fi
  \if@tempswa
    \twocolumn
  \fi}
\makeatother

\begin{document}

\imagepart{example-image}{Description}{Part title}

\end{document}

Wenden Sie die gewünschte Formatierung rund um den Namen an \@thecptionpart.

Bildbeschreibung hier eingeben

Antwort2

Wenn Sie eine KOMA-Klasse verwenden, können Sie dies tun, indem Sie \setpartpreamble. Der Befehl hat zwei optionale Argumente, um die Position und Breite anzugeben.

\documentclass{scrreprt}
\usepackage{mwe}
\begin{document}
\setpartpreamble{%
\begin{center}
Here some text and a picture

\includegraphics[width=.48\linewidth]{example-image-a}
\end{center}
}
\part{foo}
\end{document}

Bildbeschreibung hier eingeben

verwandte Informationen