将页码对齐到文本宽度之外

将页码对齐到文本宽度之外

我设法使用此代码将页码置于文本宽度的限制之外。

\documentclass[10pt]{book}
\usepackage[utf8]{inputenc}
\usepackage{showframe}
\renewcommand*\ShowFrameColor{\color{red}}
\renewcommand{\arraystretch}{1.2}
\usepackage{calc}
\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhf{}
\fancyhead[RO]{\textbf{Autor \thepage }}
\fancyhead[LE]{\textbf{ \thepage \ Obras Escolhidas}}

\begin{document}

\renewcommand{\headrule}{}
\newlength{\myoddoffset}
\setlength{\myoddoffset}{\marginparwidth + \marginparsep}
\fancyheadoffset[leh,roh]{\marginparsep+8pt}
\fancyheadoffset[loh,reh]{\myoddoffset}

\setcounter{page}{99}
a

\newpage
a
\setcounter{page}{100}
\end{document}

但是对于较大的页码,页眉会变得像这样不对齐。 在此处输入图片描述

在此处输入图片描述

我该如何解决这个问题?

答案1

使用\rlapnad \llapplainTeX 宏:

\fancyhead[RO]{\textbf{Autor\rlap{ \thepage}}}
\fancyhead[LE]{\textbf{\llap{\thepage\ }Obras Escolhidas}}

并且不要使用与 有关的宏\myoddoffset

相关内容