북클래스를 이용하고 있어요. 내 주요 내용의 모든 장 첫 번째 페이지에서 페이지 스타일(페이지 번호, 머리글, 바닥글)을 억제하고 싶지만~ 아니다in \frontmatter
- 바닥글(오른쪽 모서리)에 로마 숫자를 넣고 싶습니다.
다음을 사용하여 문서 전체의 모든 장 첫 페이지에서 페이지 스타일을 억제할 수 있습니다.
\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{empty}% original style: plain
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
\makeatother
그러나 이는 \pagestyle{empty}
머리말의 모든 "장"의 첫 번째 페이지에도 를 부과하므로 TOC 페이지에 번호가 매겨지지 않습니다. TOC 페이지에 번호를 매기고 싶지만 어떻게 해야 할지 모르겠습니다.
MWE:
\documentclass[a4paper,11pt,titlepage,oneside,openany]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{kantlipsum}
% empty style for the first page of every chapter
\makeatletter
\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\thispagestyle{empty}% original style: plain
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
\makeatother
\usepackage{makeidx}
\usepackage[titles]{tocloft}
\usepackage{fancyhdr}
\fancyhead{} % clear default layout
\fancyfoot{} % clear default layout
\fancypagestyle{mainmatter}{%
\fancyhead[L]{\sffamily \small \color{darkgray}\MakeUppercase{\bfseries \leftmark}}
\fancyhead[R]{\nouppercase \scshape \small \thepage}
}
\fancypagestyle{frontmatter}{%
\fancyhead[L]{}
\fancyhead[R]{}
\fancyfoot[R]{\thepage}
}
\begin{document}
\frontmatter
\pagestyle{frontmatter}% frontmatter page style
\clearpage
\tableofcontents
\clearpage % with tocloft we need this
\listoffigures
\clearpage % with tocloft we need this
\listoftables
\clearpage
\mainmatter
\pagestyle{mainmatter}
\chapter{A}
\kant
\chapter{B}
\kant
\chapter{C}
\kant
\end{document}
답변1
memoir
문서 섹션 \if@mainmatter
에 있는지 여부를 조건으로 사용하는 데 사용할 수 있는 조건을 제공합니다 .\mainmatter
\documentclass[a4paper,11pt,titlepage,oneside,openany]{book}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{kantlipsum}
% empty style for the first page of every chapter, except in \frontmatter
\makeatletter
\renewcommand\chapter{\if@openright\cleardoublepage\else\clearpage\fi
\if@mainmatter
\thispagestyle{empty}% plain page style in mainmatter
\else
\thispagestyle{plain}% empty page style outside of mainmatter
\fi%
\global\@topnum\z@
\@afterindentfalse
\secdef\@chapter\@schapter}
\makeatother
\usepackage{makeidx}
\usepackage[titles]{tocloft}
\usepackage{fancyhdr}
\fancyhead{} % clear default layout
\fancyfoot{} % clear default layout
\fancypagestyle{mainmatter}{%
\fancyhead[L]{\sffamily \small \color{darkgray}\MakeUppercase{\bfseries \leftmark}}
\fancyhead[R]{\nouppercase \scshape \small \thepage}
}
\fancypagestyle{frontmatter}{%
\fancyhead[L]{}
\fancyhead[R]{}
\fancyfoot[R]{\thepage}
}
\begin{document}
\frontmatter
\pagestyle{frontmatter}% frontmatter page style
\clearpage
\tableofcontents
\clearpage % with tocloft we need this
\listoffigures
\clearpage % with tocloft we need this
\listoftables
\clearpage
\mainmatter
\pagestyle{mainmatter}
\chapter{A}
\kant
\chapter{B}
\kant
\chapter{C}
\kant
\end{document}
empty
나는 각각 주요 내용과 머리말의 챕터 페이지 스타일로 및를 사용했지만 plain
원하는 대로 이를 업데이트하거나 자신만의 새로운 스타일을 만들 수도 있습니다.
또한 memoir
머리글/바닥글을 생성하는 기능을 제공하므로 필요하지 않습니다.fancyhdr
이를 위해.
답변2
그만큼titlesec
패키지는 \assignpagestyle{\chapter}{<style>}
마찬가지로 사용할 수 있지만 \pagestyle
각 장의 첫 페이지만 변경하는 명령을 제공합니다. 을 사용하여 수행하는 것과 동일 \thispagestyle{}
하지만 명시적으로 갱신하지 않습니다 \chapter
.