
В настоящее время я пытаюсь настроить документ для отчета по проекту. У меня возникли трудности с верхними и нижними колонтитулами.
Я хотел бы иметьнижний колонтитул на каждой страницеа нижний колонтитул должен выглядеть так, как показано на рисунке ниже.
Для создания этого колонтитула я в настоящее время использую fancyhdr
пакет снеобычный стиль страницыкак показано во фрагменте кода ниже.
\pagestyle{fancy}
%% FOOTER
\fancyfoot[C]{\small \thepage} % PAGE NUMBER
\fancyfoot[L]{\small ENEL895 \\ Version 1.0} % PAPER CODE AND VERSION
\fancyfoot[R]{\small \today} % TODAY'S DATE
\renewcommand{\footrulewidth}{1pt} % FOOTER RULE LINE
Проблема, с которой я столкнулся, касается нижнего колонтитула в оглавлении (я поместил его \thispagestyle{fancy}
рядом с оглавлением и всеми главами, чтобы попытаться получить верхние и нижние колонтитулы).Оглавлениеявляетсяразбросан на 2 страницах, на первой странице указан только номер страницы для нижнего колонтитула, тогда каквторая страницаимеетправильный верхний и нижний колонтитулы.
TheВерхний и нижний колонтитулы TOC для обеих страницдолжно выглядеть так, как показано на рисунке ниже.
Заголовок — вот где все становится сложным. Для заголовка мне нужны всепередовая часть(все до Главы 1), чтобы иметьназвание разделанаправая стороназаголовка и регистр букв должны быть точно такими же, как в заголовке (т.е.не заглавные буквыине выделено курсивом). Заголовок TOC (показанный выше) является примером того, что я имею в виду. Что касается глав, я бы хотел, чтобы на первой странице главы не было заголовка, а был только нижний колонтитул, указанный выше. Для остальных страниц главы я бы хотел, чтобы глава была слева (Формат: Глава № - Название главы), а раздел справа (Формат: # Название раздела) от заголовка.
Верхний и нижний колонтитулы дляпервая страница главыдолжно выглядеть так, как показано на рисунке ниже.
Верхний и нижний колонтитулы дляоставшиеся страницы главыДолжно получиться так, как показано на рисунке ниже (не обращайте внимания на то, что я показал первую страницу главы).
Еще одна трудность, с которой я столкнулся при работе с заголовком, заключается в том, что в заголовке приложения вместо Приложения А указана Глава А. Я бы хотел, чтобы это было слева от заголовка, а на первой странице приложения не должно быть заголовка (как и у глав).
Сложность заголовка приложения:
Ниже представлен MWE моего документа на данный момент (извините, в нем много комментариев, и вывод не совпадает с изображениями, показанными в этой теме).
\documentclass[12pt,a4paper]{report}
%----------------------------------------------------------------------------------------
% PACKAGES
%----------------------------------------------------------------------------------------
%% PAGE MARGINS
\usepackage[margin=1in]{geometry}
%% RANDOM LOREM IPSUM TEXT TO FILL
\usepackage{blindtext}
%% TOC BABEL
\usepackage[english]{babel}
%% HYPERLINKING
\usepackage[colorlinks=true]{hyperref}
\hypersetup{%
colorlinks,
linkcolor={red!50!black},
citecolor={blue!50!black},
urlcolor={blue!80!black}
}
%% HEADERS AND FOOTERS
\usepackage{fancyhdr}
%% HEADING TITLES (TITLE SECTIONS)
\usepackage{titlesec}
%% MAKES THE TOC WORK BETTER IMO (NOT SURE HOW)
\usepackage{tocloft}
%% INCLUDE PDF PAGES
\usepackage{pdfpages}
%----------------------------------------------------------------------------------------
% PAGE STYLE - HEADERS AND FOOTERS SETUP
%----------------------------------------------------------------------------------------
\pagestyle{fancy}
%% HEADER
\fancyhead[L]{\leftmark} % SECTION NAME-FIRST SECTION/PREVIOUS SECTION
\fancyhead[R]{\nouppercase{\rightmark}} % CHAPTER NAME
%--------------------------------------------------------------------------
%% FOOTER
\fancyfoot[C]{\small \thepage} % PAGE NUMBER
\fancyfoot[L]{\small ENEL895 \\ Version 1.0} % PAPER CODE AND VERSION
\fancyfoot[R]{\small \today} % TODAY'S DATE
\renewcommand{\footrulewidth}{1pt} % FOOTER RULE LINE
%--------------------------------------------------------------------------
%----------------------------------------------------------------------------------------
% REDEFINING CHAPTER AND SECTION (LEFT AND RIGHT MARKS) TO BE THE % CHAPTER & SECTION NAMES AND NOT CAPITALISED.
%----------------------------------------------------------------------------------------
%% CHAPTER DEFINED AS RIGHT MARK (Chapter # - Chapter Name)
\renewcommand{\chaptermark}[1]{%
\markboth{}{\chaptername
\ \thechapter ~- #1}}
%% SECTION DEFINED AS LEFT MARK (# Section Name)
\renewcommand{\sectionmark}[1]{\markboth{\thesection\ #1}{}}
%----------------------------------------------------------------------------------------
% REDEFINE THE CHAPTER HEADING FORMAT AND VERTICAL SPACING
%----------------------------------------------------------------------------------------
%% SIZE AND FORMAT OF CHAPTER HEADING TITLE
\titleformat{\chapter}[display]
{\normalfont\Huge\bfseries}{\chaptertitlename\ \thechapter}{20pt}{\Huge}
% ALTERS "BEFORE" SPACING (SECOND ARGUMENT) TO 0
\titlespacing*{\chapter}{0pt}{0pt}{20pt}
%----------------------------------------------------------------------------------------
% EDITING THE TOC TITLE AND DOTTED LINE SEGMENTS FOR CHAPTERS
%----------------------------------------------------------------------------------------
%% CHANGE TITLE TO "Table of Contents"
\addto\captionsenglish{% Replace "english" with the language you use
\renewcommand{\contentsname}%
{Table of Contents}%
}
%% ADD DOTTED LINES FOR CHAPTERS IN TOC
\renewcommand{\cftchapleader}{\cftdotfill{\cftdotsep}} % for chapters, if you really want!
%----------------------------------------------------------------------------------------
% CHANGE LINE SPACING TO 1.5
%----------------------------------------------------------------------------------------
\renewcommand{\baselinestretch}{1.5}
%--------------------------------------------------------------------------
%--------------------------------------------------------------------------
%----------------------------------------------------------------------------------------
% END OF PREAMBLE AND START OF DOCUMENT
%----------------------------------------------------------------------------------------
%--------------------------------------------------------------------------
%--------------------------------------------------------------------------
\begin{document}
%----------------------------------------------------------------------------------------
% PDF TITLE PAGE (NOT INCLUDED FOR MWE)
%----------------------------------------------------------------------------------------
%-----------------------------PDF PAGE---------------------------------
\pagenumbering{roman}
%----------------------------------------------------------------------------------------
% STATEMENT OF ORIGINALITY
%----------------------------------------------------------------------------------------
\section*{\LARGE\center{Statement of Originality\markboth{}{Statement of Originality}}}
\addcontentsline{toc}{chapter}{{Statement of Originality}}
\thispagestyle{fancy}
\newpage
%----------------------------------------------------------------------------------------
% ACKNOWLEDGEMENTS
%----------------------------------------------------------------------------------------
\section*{\LARGE\center{Acknowledgements (optional)\markboth{}{Acknowledgements}}}
\addcontentsline{toc}{chapter}{{Acknowledgements}}
\thispagestyle{fancy}
\newpage
%----------------------------------------------------------------------------------------
% ABSTRACT
%----------------------------------------------------------------------------------------
\section*{\LARGE\center{Abstract\markboth{}{Abstract}}}
\addcontentsline{toc}{chapter}{{Abstract}}
\thispagestyle{fancy}
\newpage
%----------------------------------------------------------------------------------------
% ACRONYMS (OPTIONAL)
%----------------------------------------------------------------------------------------
\section*{\LARGE\center{Acronyms (optional)\markboth{}{Acronyms}}}
\addcontentsline{toc}{chapter}{{Acronyms}}
\thispagestyle{fancy}
\newpage
%----------------------------------------------------------------------------------------
% SYMBOLS (OPTIONAL)
%----------------------------------------------------------------------------------------
\section*{\LARGE\center{Symbols (optional)\markboth{}{Symbols}}}
\addcontentsline{toc}{chapter}{{Symbols}}
\thispagestyle{fancy}
\newpage
%----------------------------------------------------------------------------------------
% TABLE OF CONTENTS
%----------------------------------------------------------------------------------------
\begin{center}
\hypersetup{linkcolor=black} % Make Links Black
\vspace*{-40pt}
\tableofcontents\thispagestyle{fancy}\markboth{}{Table of Contents}
\addcontentsline{toc}{chapter}{Table of Contents}
\newpage
\vspace*{-40pt}
\listoffigures\thispagestyle{fancy}\markboth{}{}
\addcontentsline{toc}{chapter}{List of Figures}
\newpage
\vspace*{-40pt}
\listoftables\thispagestyle{fancy}\markboth{}{}
\addcontentsline{toc}{chapter}{List of Tables}
\end{center}
\newpage
\pagenumbering{arabic}
%----------------------------------------------------------------------------------------
% MAIN TEXT (CHAPTERS)
%----------------------------------------------------------------------------------------
\chapter{Introduction}
\section{Introduction}\thispagestyle{fancy}
\Blindtext
\blindtext
\chapter{Literature Review}\thispagestyle{fancy}
\section{Background/Problem}
\blindtext
\section{Analysis..}
\Blindtext
\Blindtext
\chapter{Methodology}\thispagestyle{fancy}
\section{Procedure}
\blindtext\\
\blindtext \\
\blindtext\\
\blindtext
\section{Simulation?}
\blindtext\\
\blindtext \\
\blindtext
\chapter{Results and Discussion}\thispagestyle{fancy}
\section{Results Verification?}
\Blindtext
\chapter{Future Developments}\thispagestyle{fancy}
\section{Recommendations for Future Work}
\blindtext\\
\blindtext
\chapter{Conclusion}\thispagestyle{fancy}
\section{Conclusion}
\blindtext
%----------------------------------------------------------------------------------------
% APPENDIX
%----------------------------------------------------------------------------------------
\begin{appendix}
\chapter{Example 1}\thispagestyle{fancy}
\section{Testing}
\Blindtext
\chapter{Example 2}\thispagestyle{fancy}
\section{Extra}
\blindtext
\end{appendix}
%----------------------------------------------------------------------------------------
% BIBLIOGRAPHY/REFERENCES
%----------------------------------------------------------------------------------------
%-------------------------------REFS-----------------------------------
\end{document}
Извините, что эта ветка такая длинная, я просто подумал, что мне следует попытаться подробно объяснить свои проблемы и желаемый результат. В настоящее время я использую пакет, fancyhdr
но если вы считаете, что мне следует использовать эквивалент KOMA Script, не стесняйтесь оставлять комментарии о том, как мне следует его использовать (я раньше не использовал KOMA Script).
Спасибо.
решение1
Если вы готовы использовать memoir
класс (надмножество классов book
и report
), то вы можете получить нужные вам заголовки/нижние колонтитулы. Я знаю, это выглядит сложным, но memoir
позволяет вам определять множество стилей страниц и то, где они должны использоваться.
Мне кажется, что вам нужно несколько разных стилей страниц: для оглавления (и, предположительно, также для LoT и LoF), возможно, для титульного листа, для титульных листов глав, для общих страниц документа, возможно, для индекса или библиографии.
Следующий MWE предоставляет стили страниц для оглавления и содержания книги, титульных страниц глав (включая приложения) и общих страниц.
% headersprob.tex SE 562212
\documentclass{memoir}
\usepackage{lipsum}
\usepackage{comment}
% macro for details of the footer style
\newcommand{\enelf}[1]{%
\makeevenfoot{#1}{\small \parbox[t]{1in}{ENEL895 \\ Version 1.0}}{\small \thepage}{\small \today}
\makeoddfoot{#1}{\small \parbox[t]{1in}{ENEL895 \\ Version 1.0}}{\small \thepage}{\small \today}
\makefootrule{#1}{\textwidth}{1pt}{5pt}
}
\makepagestyle{ENELfoot}
\enelf{ENELfoot}
% pagestle for the ToC
\makepagestyle{ENELtoc}
\makeevenhead{ENELtoc}{}{}{Table of Contents}
\makeoddhead{ENELtoc}{}{}{Table of Contents}
\makeheadrule{ENELtoc}{\textwidth}{1pt}
\enelf{ENELtoc}
% pagestyle of the LoT
\makepagestyle{ENELlot}
\makeevenhead{ENELlot}{}{}{List of Tables}
\makeoddhead{ENELlot}{}{}{List of Tables}
\makeheadrule{ENELlot}{\textwidth}{1pt}
\enelf{ENELlot}
% pagestyle for chapter pages
\makepagestyle{chapter}
\enelf{chapter}
% don't uppercase chapter and section titles in headers
% (regular definition uses \MakeUppercase for titles)
\makeatletter
\renewcommand*{\chaptermark}[1]{%
\markboth{\ifnum\c@secnumdepth > \m@ne
\if@mainmatter
\@chapapp\
\thechapter \ %
\fi
\fi
#1}{}}
\renewcommand*{\sectionmark}[1]{%
\markright{\ifnum\c@secnumdepth > \z@
\thesection \ %
\fi
#1}}
\makeatother
% The page style for the bulk of the document
\makepagestyle{ENELmain}
\makeevenhead{ENELmain}{\leftmark}{}{\rightmark}
\makeoddhead{ENELmain}{\leftmark}{}{\rightmark}
\enelf{ENELmain}
\begin{document}
\pagestyle{ENELfoot}
\frontmatter
\pagestyle{ENELtoc}
\copypagestyle{chapter}{ENELtoc} % the first page of the ToC uses the chapter pagestyle
\tableofcontents
\clearpage
\pagestyle{ENELlot}
\copypagestyle{chapter}{ENELlot} % the first page of the LoT uses the chapter page style
\listoftables
\mainmatter
% set the general page style
\pagestyle{ENELmain}
% first page of a chapter uses the chapter page style, so set it to be just the footer
\copypagestyle{chapter}{ENELfoot}
\chapter{One}
\lipsum
\section{A section}
\begin{table}
\centering
TABULATION
\caption{A table}
\end{table}
\lipsum
\addtocontents{toc}{\newpage} % make sure the ToC is more that one page
\section{Another section}
\lipsum
\appendix
\chapter{App}
\lipsum
\section{In appendix}
\lipsum
\end{document}
> texdoc memoir
Более подробную информацию смотрите в документации ( глава 7).
решение2
Как указывается в документации пакета для fancyhdr, команда выдает \chapter
проблемы \thispagestyle{plain}
.
Я полагаю, \tableofcontents
что делает это тоже. Поэтому может потребоваться
переопределение для pagestyle . Вы можете сделать это, добавив в преамбулу, которая устанавливает pagestyle на pagestyle, за исключением пустого заголовка. Это приводит к отсутствию заголовка, но нижнему колонтитулу на страницах, где вводится новая глава. Не забывайте удалять всякий раз, когда вы создаете новую главу.plain
\fancypagestyle{plain}{\fancyhead{}\renewcommand{\headrule}{}}
plain
fancy
\thispagestyle{fancy}
Что касается заголовка, который не отображается на всех страницах, проблема, похоже, в определении \captionmark
и \sectionmark
.
Я обнаружил, что, похоже, работает удаление этих переопределений и добавление \nouppercase
определения обоих заголовков, что приводит к
\fancyhead[L]{\nouppercase\leftmark} % SECTION NAME-FIRST SECTION/PREVIOUS SECTION
\fancyhead[R]{\nouppercase\rightmark} % CHAPTER NAME