在展示使用 TeX 和朋友制作的精美排版Marc van Dongen 展示了他的书《LaTeX 和朋友们》,https://tex.stackexchange.com/a/46348/15360。
他使用了特定的页眉,正如他向我们展示的图片中所见。
Page number <vertical rule> Chapter number
或者
Chapter name <vertical rule> Page number
我真的很喜欢它,并且如果可能的话,希望获得相同或非常相似的格式,并且想知道如何实现这一点?
答案1
一个选项是使用fancyhdr
以及包提供的偏移量。使用
\fancyhfoffset[OR,EL]{\dimexpr\marginparsep+\marginparwidth\relax}
页眉\marginparsep+\marginparwidth
在奇数页上向右偏移,在偶数页上向左偏移。然后使用
\fancyhead[OR]{\textsc{\leftmark}\quad\smash{\rule[-.2ex]{1pt}{4cm}}\quad\thepage}
\fancyhead[EL]{\thepage\quad\smash{\rule[-.2ex]{1pt}{4cm}}\quad\textsc{\chaptername~\thechapter}}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
完整示例代码:
\documentclass{book}
\usepackage{fancyhdr}
\usepackage{lipsum}
\pagestyle{fancy}
\fancyhf{}
\fancyhfoffset[OR,EL]{\dimexpr\marginparsep+\marginparwidth\relax}
\fancyhead[OR]{\textsc{\leftmark}\quad\smash{\rule[-.2ex]{1pt}{4cm}}\quad\thepage}
\fancyhead[EL]{\thepage\quad\smash{\rule[-.2ex]{1pt}{4cm}}\quad\textsc{\chaptername~\thechapter}}
\renewcommand\headrulewidth{0pt}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\begin{document}
\chapter{Test chapter}
\lipsum[1-40]
\end{document}
答案2
我尝试使用纯 komascript 重建它并得出这个解决方案:
\documentclass[DIV=10,twoside]{scrreprt}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[automark]{scrlayer-scrpage}
\usepackage{ragged2e}
\usepackage{calc}
\usepackage{layout}
\usepackage{xcolor}
\usepackage{blindtext}
\usepackage{XCharter}
\usepackage{cabin}
\pagestyle{headings}
\setkomafont{pageheadfoot}{\normalfont\sffamily\scshape}
\setkomafont{pagenumber}{\normalfont\sffamily}
%setting lengths
\newlength{\ruleWidth}
\setlength{\ruleWidth}{2pt}
\newlength{\pageNumperSpace}
\setlength{\pageNumperSpace}{35pt}
\newlength{\pageNumberHeaderSkip}
\setlength{\pageNumberHeaderSkip}{-\paperwidth+\textwidth+\hoffset+1in+\oddsidemargin}
\newlength{\chapterHeaderSkip}
\setlength{\chapterHeaderSkip}{\pageNumberHeaderSkip+1em+\pageNumperSpace+\ruleWidth}
% scrlayer definitions
\rohead{\smash{\textcolor{black}{\rule[-4pt]{\ruleWidth}{\voffset+\topmargin+\headheight+1in}}}\makebox[\pageNumperSpace][c]{\oldstylenums\pagemark}\hspace{\pageNumberHeaderSkip}}
\lehead{\hspace{\pageNumberHeaderSkip}\makebox[\pageNumperSpace][c]{\oldstylenums\pagemark}\smash{\textcolor{black}{\rule[-4pt]{\ruleWidth}{\voffset+\topmargin+\headheight+1in}}}}
\cohead{\raggedleft{\headmark} \hspace{\chapterHeaderSkip}}
\cehead{\hspace{\chapterHeaderSkip} \raggedright{\headmark} }
\begin{document}
\Blinddocument
\end{document}