I've been trying to add some color swatches to the header. So far I've tried Tikz with the usual header commands of scrlayer-scrpage
, but it didn't work out well. I almost did it, but two problems remain:
- There is effectively no "background", the layer hides the header content;
- The headers aren't symmetrical (odd and even pages)
The page number, as can be seen in the code (relevant part adapted from here), needs to be inside the darker rectangle, outside of the text block.
\documentclass[twoside]{scrartcl}
\usepackage[papersize={216mm,280mm},
inner=22mm,
outer=26mm,
footskip=11mm,
top=24mm,
bottom=23mm,
headsep=7mm,
footnotesep=4mm,
columnsep=6mm,
]{geometry}
\usepackage{xcolor}
\usepackage{lipsum,blindtext}
\usepackage[%headsepline=true,
footsepline=true,plainfootsepline]
{scrlayer-scrpage}
\pagestyle{scrheadings}
\clearpairofpagestyles %use after defining page style
\rohead{Lorem ipsum dolor sit amet}
\lehead{\llap{\pagemark\hspace{4mm}}AUTOR}
\lefoot*{Some very very long name}
\rofoot*{Some very very long name}
\setkomafont{pageheadfoot}{\sff\footnotesize}
\setkomafont{pagenumber}{\sffamily}
\DeclareNewLayer[
background,
oddpage,
align=tr,
hoffset=\paperwidth,
voffset=0pt,%distance from top
%width=1cm,% width of the swatch
width=\paperwidth,
height=\dimexpr\voffset+1in+\topmargin+\headheight\relax,% height of the swatch
contents={\textcolor{lightgray!50}{\rule{9mm}{\layerheight}}
\textcolor{lightgray!70!black}{\rule{15mm}{\layerheight}} \textcolor{lightgray!50}{\rule{190mm}{\layerheight}}
}% end contents
]{swatch.odd}
\DeclareNewLayer[
clone=swatch.odd,
evenpage,
align=l,
%align=tl,
hoffset=0pt
]{swatch.even}
% add layers to every pagestyle
\AddLayersToPageStyle{scrheadings}{swatch.odd,swatch.even}
\begin{document}
\lipsum[1-10]
\end{document}
Any other possible or simpler solutions, e.g. with TiKz, would be most welcome, too.