회고록으로 보고서를 작성 중인데 제목 페이지의 색상을 설정하고 싶습니다. 패키지 pagecolor
는 좋아 보이지만 양면 보고서에서 두 페이지 중 첫 번째 색상만 설정하는 방법을 알 수 없습니다.
예를 들어, 여기에 MWE가 있습니다. 하지만 첫 번째둘페이지가 빨간색입니다.
\documentclass{memoir}
\usepackage{lipsum}
\usepackage{pagecolor}
\title{Test}
\begin{document}
\newpagecolor{red}
\begin{titlingpage}
\maketitle
\end{titlingpage}
\newpagecolor{white}
\chapter{First chapter}
\lipsum[1]
\end{document}
어떤 아이디어가 있나요?
답변1
Afterpage 패키지를 사용할 수 있습니다.
\documentclass{memoir}
\usepackage{lipsum}
\usepackage{xcolor}
\usepackage{pagecolor}
\usepackage{afterpage}
\title{Test}
\author{flav}
\begin{document}
\newpagecolor{gray}\afterpage{\restorepagecolor}
\maketitle
\chapter{First chapter}
\lipsum[1]
\end{document}
답변2
memoir.cls
제목의 관련 부분은 다음과 같습니다.
\newcommand{\@maketitle}{%
\let\footnote\@mem@titlefootkill
\ifdim\pagetotal>\z@
\newpage
\fi
\null
\vskip 2em%
\vspace*{\droptitle}
\maketitlehooka
{\@bspretitle \@title \@bsposttitle}
\maketitlehookb
{\@bspreauthor \@author \@bspostauthor}
\maketitlehookc
{\@bspredate \@date \@bspostdate}
\maketitlehookd
\par
\vskip 1.5em}
따라서 는 \maketitlehookd
기본적으로 첫 번째 제목 페이지에 있어야 하는 마지막 항목입니다. 이 후크 이후 \clearpage
에는 그렇게 해야 하지만 최선의 해결책은 아닙니다. 후크의 내용이 두 번째 페이지로 이동하는 등 첫 번째 페이지에 더 많은 콘텐츠가 있는 경우 클리어 페이지가 있어야 하지만 이러한 의미에서 두 번째 페이지는 여전히 제목 페이지이며 동일한 색상이어야 합니다. 내 관점 에선. 끝부분을 패치하는 것이 \@maketitle
아마도 더 좋은 방법일 것입니다.
\documentclass{memoir}
\usepackage{lipsum}
\usepackage{xcolor}
\usepackage{pagecolor}
\usepackage{xpatch}
% Patching the end of `\@maketitle` -- Assume that nothing is on the second page.
\xpatchcmd{\@maketitle}{\par
\vskip 1.5em}{%
\par
\vskip 1.5em
\clearpage\newpagecolor{white}}{}{}%
\title{Test}
\begin{document}
\newpagecolor{red}
\begin{titlingpage}
\maketitle
\end{titlingpage}
\newpagecolor{white}
\chapter{First chapter}
\lipsum[1]
\end{document}