我正在使用该类scrreprt
并尝试修改文档中的页眉。
我正在生成一个twosided
文档;章节从偶数页开始。在偶数页(章节第一页除外),页眉应显示章节标题和页码;在奇数页,页眉应显示节标题和页码。
我已在我的文档中实现了这些要求。
但是,有一种情况我还不满意。我在每章末尾生成参考书目。对于奇数页,页眉的行为正如我所希望的那样,显示“章节标题”。但是,如果参考书目从偶数页开始,页眉将显示“参考文献”而不是“章节标题”。
我希望修复这个问题:“参考文献”只能出现在参考书目后续页面(第一页之后)的页眉中。似乎每个参考书目都被视为其自己的一章。我该如何解决这个问题?
请注意,我想坚持 KOMA 级scrreprt
。
编辑:我根据建议更改了代码(使用 refsegment 而不是 refsection)。这是我的第二次编辑。
\documentclass[12pt, twoside, openright, chapterprefix, numbers=noenddot]{scrreprt}
\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm,headheight=15pt,includeheadfoot]{geometry}
\usepackage[automark,headsepline=off]{scrlayer-scrpage}
\usepackage[ngerman]{babel} % deutsche Trennregeln
\usepackage{lmodern} % fixes bug with \usepackage[T1]{fontenc}; ändert Schriftart zudem in Latin Modern
\usepackage[T1]{fontenc} % für europäische Autoren ratsam; % wichtig für Trennung von Wörtern mit Umlauten
\usepackage[utf8]{inputenc}
\usepackage{textcomp}
\usepackage{etoolbox}
\usepackage{patchcmd}
\usepackage{xpatch}
\usepackage{lipsum}
\usepackage{hyperref}
\hypersetup{colorlinks=true, linktocpage=true, linktoc=all,
%linkcolor=beierblau,
citecolor=blue, filecolor=blue, urlcolor=blue, breaklinks=false,
bookmarksopen=true, colorlinks, linkcolor = black}
\usepackage[all]{hypcap} % needed to help hyperlinks direct correctly;
\usepackage[numbered]{bookmark}
%%%% Change Chapter Prefix
\setkomafont{chapterprefix}{\huge} % Default is \LARGE
%%% No Spacing Between Chapter Title and Prefix
\RedeclareSectionCommand[innerskip=0pt]{chapter} % <--- Vary distance here (Thanks @esdd!)
%%% Subsubsections kursiv erscheinen lassen + Abstand zwischen Überschrift/Nummerierung
%\usepackage[noindentafter]{titlesec}
%\titleformat{\subsection}{\sffamily \bfseries \large }{\thesubsection}{1em}{} % auch NUmmerierung kursiv
%\titleformat{\section}{\sffamily\bfseries\Large}{\thesection}{1em}{}
%\titleformat{\chapter}{\sffamily \Huge\bfseries}{\chaptername\ \thechapter}{0pt}{\vskip 0pt\raggedright} %\vskip 20pt\raggedright
%%% Page header: No Dot after Numbering & Spacing between Numbering and Title in page headers
\renewcommand*\chaptermarkformat{\thechapter \quad}
\renewcommand*\sectionmarkformat{\thesection \quad}
\renewcommand*{\headfont}{\normalfont}
%%% PAGER HEADERS
\renewcommand*\chapterpagestyle{plain.scrheadings} % default=empty
\lehead{\pagemark} % left even head
\rehead{\headmark} % right even head %leftmark = chapter
\lohead{\rightmark} % left odd head %rightmark = section
\rohead{\pagemark} % right odd head
%%% References
\usepackage[style=authoryear, backend=biber,
refsegment=chapter % benutze automatisch Kapitel als Biobliographie-Abschnitte...
]{biblatex}
\ExecuteBibliographyOptions{firstinits=true,maxcitenames=2,maxbibnames=999,isbn=false,doi=false,url=false,labeldate=true,uniquelist=minyear}
\RequirePackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{Giancoli,
Author = {Douglas C. Giancoli},
Publisher = {Pearson},
Title = {Physics for Scientists \& Engineers},
Year = {2014},
Date-Added = {2015-10-05 12:23:12 +0000},
Date-Modified = {2015-10-05 12:23:50 +0000},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\defbibheading{subbibintoc}[\refname]{\addsec{#1}}
%%% DOCUMENT
\begin{document}
\chapter{Test-Kapitel}
\lipsum
\section{Test-Section}
\lipsum
Some \cite{Giancoli} text \autocite{Giancoli}
\lipsum
\lipsum
%\printbibliography[segment=\therefsegment]
\printbibliography[segment=\therefsegment, heading=subbibintoc, title={Literatur}]
\clearpage
\end{document}
答案1
你要
\defbibheading{subbibintoc}[\refname]{\addsec{#1}}
只需将代码放入你的序言中即可。
默认heading=subbibintoc
值为
\defbibheading{subbibintoc}[\refname]{%
\addsec{#1}%
\markboth{#1}{#1}}
并包含\markboth{#1}{#1}
您不想要的内容。
这与https://github.com/plk/biblatex/issues/627其中 Johannes 提到 KOMA 航向设置可能需要彻底检查。
还请注意,titlesec
不应与 KOMA 类一起使用。