我目前正在使用该titlesec
软件包来TikZ
修改章节和节标题(见附图)。请注意显示章节号的深灰色框。我的问题是:我能否在章节标题后的页面上(纸张背面)创建相应的框。是否有可能修改除标题本身页面之外的其他页面?
我想我可以定义一个自定义的页面样式并手动为每个章节设置它作为一种快速修复,但如果有一些自动化的功能就更好了。
有什么建议么?
以下是我如何生成标题的简单示例。期望的结果是第 2 页和第 4 页左上角出现一个深灰色框,使其与第 1 页和第 3 页灰色框的背面对齐。我之前没有提供任何代码,因为我不知道从哪里开始查找。到目前为止,我发现的所有示例都涉及修改与章节标题相同的页面。
\documentclass{book}
\usepackage[vmargin=2.5cm, rmargin=2.5cm, lmargin=2.5cm]{geometry} % Adjust page margins
\usepackage{tikz}
\usepackage[explicit, pagestyles]{titlesec}
\usepackage{bold-extra}
\usepackage{lmodern}
\definecolor{lightgray}{gray}{0.85}
\definecolor{darkgray}{gray}{0.65}
\newcommand*\chapterlabel{}
\titleformat{name=\chapter}
{\gdef\chapterlabel{}\normalfont\Large\scshape}
{\gdef\chapterlabel{\thechapter\ }}{0pt}
{
\begin{tikzpicture}[remember picture,overlay]
\node[draw=none, yshift=-7cm] at (current page.north west) {
\begin{tikzpicture}[remember picture, overlay]
\draw[draw=none, fill=lightgray] (0,0) rectangle (\paperwidth,3cm);
\node[draw=none, anchor=west,yshift=1.5cm,xshift=1in+\hoffset+\oddsidemargin, text width=\textwidth, inner sep=0, outer sep=0]{\huge{#1}};
\node[draw=none, anchor=south east,rectangle, xshift=\paperwidth, inner sep=6pt, fill=darkgray, minimum height=3cm, minimum width=2.5cm]{\Huge \chapterlabel};
\end{tikzpicture}
};
\end{tikzpicture}
\vspace{1cm}
}
\begin{document}
\chapter{Chapter title}
\section{Section}
\chapter{Another chapter}
\section{Section}
\end{document}
-托马斯-
答案1
根据 John Kormylo 的评论,afterpage
可以使用包来实现这一点。这是显示效果的更新示例。
\documentclass{book}
\usepackage[vmargin=2.5cm, rmargin=2.5cm, lmargin=2.5cm]{geometry} % Adjust page margins
\usepackage{tikz}
\usepackage[explicit, pagestyles]{titlesec}
\usepackage{bold-extra}
\usepackage{lmodern}
\usepackage{afterpage}
\definecolor{lightgray}{gray}{0.85}
\definecolor{darkgray}{gray}{0.65}
\newcommand*\chapterlabel{}
\titleformat{name=\chapter}
{\gdef\chapterlabel{}\normalfont\Large\scshape}
{\gdef\chapterlabel{\thechapter\ }}{0pt}
{
\begin{tikzpicture}[remember picture,overlay]
\node[draw=none, yshift=-7cm] at (current page.north west) {
\begin{tikzpicture}[remember picture, overlay]
\draw[draw=none, fill=lightgray] (0,0) rectangle (\paperwidth,3cm);
\node[draw=none, anchor=west,yshift=1.5cm,xshift=1in+\hoffset+\oddsidemargin, text width=\textwidth, inner sep=0, outer sep=0]{\huge{#1}};
\node[draw=none, anchor=south east,rectangle, xshift=\paperwidth, inner sep=6pt, fill=darkgray, minimum height=3cm, minimum width=2.5cm]{\Huge \chapterlabel};
\end{tikzpicture}
};
\end{tikzpicture}
\vspace{1cm}
\afterpage{
\begin{tikzpicture}[remember picture,overlay]
\node[draw=none, yshift=-7cm] at (current page.north west) {
\begin{tikzpicture}[remember picture, overlay]
\node[draw=none, anchor=south west,rectangle, fill=darkgray, minimum height=3cm, minimum width=1cm]{};
\end{tikzpicture}
};
\end{tikzpicture}
}
}
\begin{document}
\chapter{Chapter title}
\section{Section}
\chapter{Another chapter}
\section{Section}
\end{document}