首先是 MWE
\documentclass{book}
\usepackage{xcolor}
\usepackage{titlesec}
\newcommand{\partfont}{}
%% \titleclass{\part}{top}
\titleformat{\part}[display]
{\pagecolor{black}\color{white}\fontsize{60}{80}\selectfont\partfont}
{\fontsize{36}{42}\selectfont\normalfont \textbf{ \thepart}} %
{0em}
{}[\nopagecolor] % problem!
\assignpagestyle{\part}{empty}
\usepackage{geometry}[b5paper, margin=1.25in]
\begin{document}
\part{Awesome Part}
\chapter{The Ego and its Own}
Hello World
\end{document}
现在:我想要部分页面颜色为黑色,字母为白色。如果我不使用after-code
\nopagecolor
,则每页都是黑色。当我像在 MWE 中一样使用它时,零件页面也会呈现为白色(因此您无法阅读零件名称,因为它也是白色的。
令人惊讶的是,我不需要做任何事情就可以将黑色文本放在部分页面之外 - 尽管将其设置为白色并且表示使用时颜色变化似乎是全局的\pagecolor
......
答案1
您可以延迟\nopagecolor
到页面结束:
\documentclass{book}
\usepackage{xcolor}
\usepackage{titlesec}
\newcommand{\partfont}{}
%% \titleclass{\part}{top}
\titleformat{\part}[display]
{\pagecolor{black}\color{white}\fontsize{60}{80}\selectfont\partfont}
{\fontsize{36}{42}\selectfont\normalfont \textbf{ \thepart}} %
{0em}
{}[\AddToHookNext{shipout/after}{\nopagecolor}] % problem!
\assignpagestyle{\part}{empty}
\usepackage{geometry}[b5paper, margin=1.25in]
\begin{document}
\part{Awesome Part}
\chapter{The Ego and its Own}
Hello World
\end{document}