如何创建显示在页边距而不是页眉中的连续页眉?以下 MWE 生成了我想要的页眉中的连续文本。我想用\def
类似 的内容替换行\def\@oddhead{\marginpar{\thepage \\ \rightmark:\leftmark}}
。正确的版本会在页边距中生成两行连续文本。
\documentclass{book}
\usepackage{pgffor}
\usepackage{blindtext}
\makeatletter
\def\@oddhead{\thepage \hfill \rightmark:\leftmark}
\def\@evenhead{\thepage \hfill \rightmark:\leftmark}
\makeatother
\begin{document}
\foreach \n in {0,...,12}{\markboth{\n}{\n}\blindtext\par}
\end{document}
答案1
像这样的?我添加了(在序言中注释)一段使用的代码fancyhdr
。
\documentclass[twoside]{book}
\usepackage{pgffor}
\usepackage{blindtext}
\makeatletter
\def\@oddhead{\hfill\rlap{\hspace{\marginparsep}\raisebox{-\dimexpr\headsep+\height+\smallskipamount\relax}{\parbox{\marginparwidth}{\centering\rightmark:\leftmark\\\thepage}}}}
\def\@evenhead{\llap{\raisebox{-\dimexpr\headsep+\height+\smallskipamount\relax}%
{\parbox{\marginparwidth}{\centering\rightmark:\leftmark\\\thepage}\hspace{\marginparsep}}\hfill}}
\makeatother%
\begin{document}
\foreach \n in {0,...,12}{\markboth{\n}{\n}\blindtext\par}
\end{document}