我正在使用带有几何包的文章双面环境。我将边距设置为不对称 - 其中一个边距为 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
)。