私は回想録付きのレポートを書いていますが、タイトル ページの色を設定したいと考えています。パッケージpagecolor
は期待できそうですが、両面レポートの 2 ページのうち最初のページのみの色を設定する方法がわかりません。
例として、ここに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
このフックの後に を配置してもかまいませんが、最適な解決策ではありません。 最初のページにさらにコンテンツがあり、フックのコンテンツが 2 ページ目に移動する場合は、クリア ページを配置する必要がありますが、この意味では、 2 ページ目は依然としてタイトル ページであり、同じ色にする必要があります (私の見解)。 の末尾をパッチする方が\@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}