섹션 번호가 0보다 큰 경우에만 헤더 표시

섹션 번호가 0보다 큰 경우에만 헤더 표시

현재 섹션 이름 + 장.섹션 번호가 헤더에 표시됩니다. 이것은 정상적인 동작입니다(내가 원하는 것).

예:

여기에 이미지 설명을 입력하세요

페이지에 섹션이 없는 경우 헤더 텍스트를 어떻게 제거합니까? 다음 예는 내 문제를 보여줍니다. 헤더는 "1.0"이지만 아무것도 표시하고 싶지 않습니다.

예:

여기에 이미지 설명을 입력하세요

여기 내 MWE가 있습니다.

\documentclass{scrbook}
\usepackage[english]{babel}
\usepackage{blindtext}

\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{\markright{#1}{}}

\fancyhead{}
\fancyhead[LE]{\makebox[2cm][r]{}{}}
\fancyhead[RO]{\rightmark\hspace*{0.2cm}\thesection}


\begin{document}

\chapter{An example chapter}

\blindtext[25]

\section{An example section}

\blindtext
\end{document}

답변1

fancyhdr와 함께 사용하는 것은 scrbook권장되지 않습니다. 그러나 해결책은 다음과 같습니다 . \thesection. 인수 \markright\markright하나만 취합니다(반면 \markboth두 개가 필요함).

\documentclass{scrbook}
\usepackage[english]{babel}
\usepackage{lipsum}

\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\renewcommand{\sectionmark}[1]{%
  \markright{#1\ \thesection}%
}

\fancyhf{}
\fancyhead[RO]{\rightmark}
\fancyfoot[C]{\thepage}

\begin{document}

\chapter{An example chapter}

\lipsum[1-20]

\section{An example section}

\lipsum[1-20]
\end{document}

관련 정보