我确实需要在页码上方/下方添加小条,我查看过是否有关于页码上方小条的类似问题,但是,在我的情况下,对于下方的小条不起作用。我尝试了以下代码:
\documentclass{book}
\usepackage{geometry}
\geometry{top=2cm,bottom=3cm,left=2cm,right=4cm,marginparwidth=2.8cm,marginparsep=1cm}
\usepackage{stackengine}
\makeatletter
\usepackage{xcolor}
\usepackage{scrlayer-scrpage}
\clearpairofpagestyles
\addtokomafont{pagenumber}{\LARGE\bfseries}
\renewcommand\pagemark{\fcolorbox{white}{white}{\usekomafont{pagenumber}\thepage}}
\DeclareNewLayer[
oddpage,
background,
page,
addheight=-1cm,
addwidth=-2cm,
mode=picture,
contents=\putLR{\stackanchor{\rule{30\p@}{2\p@}}{\pagemark}}
]{pagenumber.odd}
\DeclareNewLayer[
clone=pagenumber.odd,
evenpage,
hoffset=2cm,
contents=\putLL{\makebox[0pt][c]{\pagemark}}
]{pagenumber.even}
\AddLayersToPageStyle{scrheadings}{pagenumber.odd,pagenumber.even}
\AddLayersToPageStyle{plain}{pagenumber.odd,pagenumber.even}
\usepackage{blindtext}
\usepackage{showframe}
\begin{document}
\chapter{A chapter}
\Blindtext[10]
\clearpage
\thispagestyle{empty}
{\Huge A page with empty page style.\par}
\clearpage
\Blindtext
\newgeometry{top=8cm,bottom=5cm,right=6cm,left=5cm,marginparwidth=2cm,marginparsep=3mm}
\Blindtext[10]
\end{document}
这只是我尝试的一个例子。在此代码中,我只会在奇数页中获取该栏,这很好。
有没有想过如何在页码下方添加相同的栏目?控制栏目和页码之间的距离也会很有帮助。
答案1
下面使用环境并使用和放置tabular
规则。booktab
\toprule
\bottomrule
我稍微改变了定位(我希望这样没问题)。代码现在使用\clap
around \mypagemark
,这反过来又将tabular
around \pagemark
。\clap
使用 是为了让页码以该位置为中心,这样对于较大的页码,位置似乎相同。您还可以使用\llap
使较大的数字向左增长,或\rlap
使较大的数字向右增长。
\documentclass{book}
\usepackage{geometry}
\geometry{top=2cm,bottom=3cm,left=2cm,right=4cm,marginparwidth=2.8cm,marginparsep=1cm}
\makeatletter
\usepackage{xcolor}
\usepackage{scrlayer-scrpage}
\clearpairofpagestyles
\addtokomafont{pagenumber}{\LARGE\bfseries}
\newcommand*\mypagemark
{\begin{tabular}{c}\toprule[1.5pt]\pagemark\\\bottomrule[1.5pt]\end{tabular}}
\usepackage{booktabs}
\DeclareNewLayer[
oddpage,
background,
page,
addheight=-1cm,
hoffset=\dimexpr\paperwidth-2cm\relax,
mode=picture,
contents=\clap{\mypagemark}
]{pagenumber.odd}
\DeclareNewLayer[
clone=pagenumber.odd,
evenpage,
hoffset=2cm,
contents=\clap{\mypagemark}
]{pagenumber.even}
\AddLayersToPageStyle{scrheadings}{pagenumber.odd,pagenumber.even}
\AddLayersToPageStyle{plain}{pagenumber.odd,pagenumber.even}
\usepackage{blindtext}
\usepackage{showframe}
\begin{document}
\chapter{A chapter}
\Blindtext[10]
\clearpage
\thispagestyle{empty}
{\Huge A page with empty page style.\par}
\clearpage
\Blindtext
\newgeometry{top=8cm,bottom=5cm,right=6cm,left=5cm,marginparwidth=2cm,marginparsep=3mm}
\Blindtext[10]
\end{document}