最終版本

最終版本

我試圖在報告的部分標題頁上包含一個圖像,使其看起來像這樣,但在目錄中正確顯示:

\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

類似的問題已被問到這裡,但對我來說\printparttitle會產生錯誤。

有人知道該怎麼做嗎?

在另一個論壇中也提出了另一個類似的問題:這裡

\part我嘗試修改文件中的定義,report.cls以實際使零件的標題看起來不同,但它不起作用。 (我需要圖片的空間)。

它看起來像什麼:
第一部分
Lorem Ipsum

我想要它的樣子
第一部:Lorem Ipsum 這是透過這段程式碼獲得的:

{\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}

有人有主意嗎?

答案1

在指令中加入圖像排版\@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

完整範例(此demo選項僅用於範例)

\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}

在此輸入影像描述

也可能重新定義\@part,並對 進行一些小的修改\@endpart,以免標題中出現換行符號。

\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}

在此輸入影像描述

如果你想上移部分標題,你必須改變;\vfil的定義。\part例如,透過新增

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

\vfil並將 的重新定義改為 ,\@endpart底部\vspace{\stretch{2}}的空間將是頂部的兩倍。


最終版本

圖片左邊是結果\imagepart,右邊是你的願望。

\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}

在此輸入影像描述

新增 2022

如何在圖片下方加入一些描述文字?這是一種可能性。

\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}

在 的呼叫周圍套用您希望的格式\@thecptionpart

在此輸入影像描述

答案2

如果您使用 KOMA 類,您可以透過 來完成此操作\setpartpreamble。此命令有兩個可選參數來指定位置和寬度。

\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}

在此輸入影像描述

相關內容