Estoy intentando incluir una imagen en la página de título de la parte de mi informe, para que se vea así, pero se muestre correctamente en el ToC:
\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
Se ha hecho una pregunta similaraquí, pero para mí \printparttitle
produce un error.
¿Alguien sabe cómo hacer esto?
Se hizo otra pregunta similar en otro foro:aquí.
Intenté modificar la definición \part
del report.cls
archivo para que el título de la parte se viera diferente, pero no funcionó. (Necesito el espacio para la foto).
Cómo se ve:
Parte I
Lorem Ipsum
Como quiero que se vea
Parte I: Lorem Ipsum
que se obtiene con este código:
{\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}
¿Alguien tiene una idea?
Respuesta1
Agregue la composición tipográfica de la imagen al comando \@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
Ejemplo completo (la demo
opción es solo para el ejemplo)
\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}
Una posible redefinición también de \@part
, con algunas modificaciones menores \@endpart
, para no tener saltos de línea en el título.
\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}
Si desea subir el título de la parte, debe cambiar la \vfil
definición de \part
; por ejemplo, añadiendo
\renewcommand\part{%
\if@openright
\cleardoublepage
\else
\clearpage
\fi
\thispagestyle{plain}%
\if@twocolumn
\onecolumn
\@tempswatrue
\else
\@tempswafalse
\fi
\null\vspace{\stretch{1}}
\secdef\@part\@spart}
y cambiando \vfil
en la redefinición de \@endpart
a \vspace{\stretch{2}}
tendrás el doble de espacio en la parte inferior que en la superior.
Versión definitiva
A la izquierda de la imagen el resultado de \imagepart
, a la derecha tu deseo.
\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}
Adición 2022
¿Cómo agregar algún texto de descripción debajo de la imagen? He aquí una posibilidad.
\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}
Aplique el formato que desee alrededor de la llamada de \@thecptionpart
.
Respuesta2
Si utiliza una clase KOMA, puede hacerlo mediante \setpartpreamble
. El comando tiene dos argumentos opcionales para especificar la posición y el ancho.
\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}