решение1
scrlayer-scrpage
Если вместо этого вы можете использовать пакет, fancyhdr
вы можете определить новые слои и добавить их в предопределенные стили страницы scrheadings
и plain
.
\documentclass[
% twoside
]{article}
\usepackage{xcolor}
\usepackage{scrlayer-scrpage}
\clearpairofpagestyles
\DeclareNewLayer[
foreground,
oddpage,
align=br,
hoffset=\paperwidth,
voffset=\paperheight,
width=7em,
height=2\baselineskip,
contents={{%
\setlength{\fboxsep}{0pt}%
\colorbox{red!50!black}{\parbox[c][\layerheight][c]{\layerwidth}{\centering\pagemark}}%
}}
]{pagenumberouterbottom.odd}
\DeclareNewLayer[
clone=pagenumberouterbottom.odd,
evenpage,
align=bl,
hoffset=0pt
]{pagenumberouterbottom.even}
\addtokomafont{pagenumber}{\color{white}\bfseries}
\AddLayersToPageStyle{scrheadings}{pagenumberouterbottom.odd,pagenumberouterbottom.even}
\AddLayersToPageStyle{plain}{pagenumberouterbottom.odd,pagenumberouterbottom.even}
\usepackage{blindtext}% only for dummy text
\begin{document}
\blinddocument
\end{document}
Обратите внимание, что в коде есть также слой для четных страниц. Так что если документ двусторонний, номер страницы будет на внешнем поле.
С twoside
:
решение2
я нашелэтотчерез google и немного поигрался. Чтобы сместить поля как таковые (например, нижний колонтитул) можно использовать пакет геометрии.
\documentclass{scrbook}
\usepackage{scrlayer-scrpage}
\lefoot{
\hspace{-5em}\pagemark\headmark
}
\rofoot{
\headmark\pagemark\hspace{-5em}
}
\usepackage{lipsum}
\begin{document}
\pagestyle{scrheadings}
\lipsum[1-3]
\newpage
\lipsum[1-3]
\end{document}