不对称页码

不对称页码

我正在使用带有几何包的文章双面环境。我将边距设置为不对称 - 其中一个边距为 5 厘米,以制作边距注释。问题是页码不在页面的中心,而是在 \textwidth 的中心。如何告诉 latex 将页码设置在页面中间?

答案1

scrlayer-scrpage另一种可能性是带有选项的包footwidth=paper:<offset>。如果内边距为 2cm,则偏移量为 -2cm。

\documentclass[
  twoside
]{article}
\usepackage{geometry}
\geometry{
  a4paper,
  inner=2cm,
  outer=5cm,
}

\usepackage[footwidth=paper:-2cm]{scrlayer-scrpage}
\clearpairofpagestyles
\cfoot*{\pagemark}% KOMA-Script version 3.14 or newer
%\cfoot[\pagemark]{pagemark}% alternatively

\usepackage{blindtext}

\begin{document}
\thispagestyle{plain}
\Blindtext[12]
\end{document}

在此处输入图片描述

这适用于单面和双面模式。


或者,即使您不知道内边距的大小,您也可以定义一个新图层。

\documentclass[
  twoside
]{article}
\usepackage{geometry}
\geometry{
  a4paper,
  hmarginratio=1:3
}

\usepackage{scrlayer-scrpage}
\clearpairofpagestyles
\DeclareNewLayer[
  foot,
  width=\paperwidth,
  hoffset=0pt,
  foreground,
  contents={\makebox[\layerwidth]{\pagemark}}
]{pagenumber.fg}
\AddLayersToPageStyle{scrheadings}{pagenumber.fg}
\AddLayersToPageStyle{plain.scrheadings}{pagenumber.fg}
%% or with one command to all pagestyles, including empty
%\AddLayersToPageStyle{@everystyle@}{pagenumber.fg}

\usepackage{blindtext}

\begin{document}
\Blindtext[12]
\end{document}

答案2

我想你正在使用geometry;如果你还加载fancyhdr,那很容易:

\documentclass{article}
\usepackage{geometry}
\geometry{
  a4paper,
  left=2cm,
  right=5cm,
}

\usepackage{fancyhdr}

\pagestyle{fancy}
\renewcommand{\headrulewidth}{0pt}
\fancyhf{}
\fancyfoot[C]{\thepage}
\fancyfootoffset[R]{3cm}% 5cm - 2cm

\usepackage{kantlipsum}% just for the example

\begin{document}

\kant

\end{document}

在此处输入图片描述

答案3

在页眉/页脚中写入内容的包通常受页面上的文本块位置约束。如果您希望避免此限制并根据页面设置页码,那么eso-pic提供一个简单的解决方案:

在此处输入图片描述

\documentclass{article}
\usepackage{geometry,eso-pic}
\geometry{
  twoside,
  margin=2cm,
  inner=5cm,
  outer=2cm}
\usepackage{lipsum}
\AddToShipoutPictureFG{%
  \AtPageLowerLeft{%
    \raisebox{3\baselineskip}{%
      \makebox[\paperwidth]{\thepage}}
  }
}
\pagestyle{empty}
\begin{document}

\lipsum[1-50]

\end{document}

您将\thepage在发货时(适当的时间)设置,使用页面左下角作为开始(\AtPageLowerLeft)。

相关内容