我正在设计文本的最终布局。我使用geometry
包设置了一些边距:
\documentclass[ngerman,12pt]{article}
\usepackage{geometry}
\usepackage{pagecolor}
\usepackage{lipsum}
\newpagecolor{cyan}
\geometry{a4paper, top=25mm, left=20mm, right=90mm, bottom=15mm,
nohead, nomarginpar,
footskip=10mm, includefoot,
showframe
}
\pagestyle{plain}
\begin{document}
\lipsum[1-2]
\end{document}
现在我的问题是页脚中的页码相对于文本宽度水平居中显示,但我需要它相对于页面宽度居中:
答案1
没有任何包,您可以重新定义\@oddfoot
; 但我认为这不是一个好主意。您不需要进行任何计算,包括纸张宽度,只需考虑边距并\hfil
完成其余工作。
\documentclass{article}
\usepackage{geometry}
\usepackage{lipsum}
\geometry{
a4paper,
top=25mm,
left=20mm,
right=90mm,
bottom=15mm,
nohead,
nomarginpar,
footskip=10mm,
includefoot,
heightrounded,
showframe,
}
\pagestyle{plain}
\makeatletter
\AtBeginDocument{%
\renewcommand\@oddfoot{%
\hspace*{\dimexpr\Gm@rmargin-\Gm@lmargin}% right margin minus left margin
\hfil\thepage\hfil
}%
}
\makeatother
\begin{document}
\lipsum
\end{document}
答案2
通常情况下,单面文档的左右边距相等,除非需要留出空间来容纳某些特定内容(例如边注或装订)。
假设两种情况都不是,而您只是想要一个不平衡的外观,那么您可以使用fancyhdr
(或其他类似的包)来实现偏移。例如:
\documentclass[a4paper,12pt]{article}
\usepackage{geometry,fancyhdr}
\usepackage{pagecolor}
\usepackage{lipsum}
\newpagecolor{cyan}
\geometry{%
top=25mm,
left=20mm,
right=90mm,
bottom=15mm,
nohead,
nomarginpar,
footskip=10mm,
includefoot,
showframe}
\fancypagestyle{plain}{%
\renewcommand\headrulewidth{0pt}%
\fancyheadoffset[lf]{-85mm}% set to .5\paperwidth - \leftmargin
\fancyhf{}%
\fancyhf[lf]{\thepage}%
}
\pagestyle{plain}
\begin{document}
\lipsum[1-2]
\end{document}
我不知道为什么你的例子必须使用青色纸,但是你这样做了: