我正在写一篇论文,我的大学要求14pt
fontsize
正文使用 1.5 倍行距。他们要求章节标题和单词第 N 章将在全部大写,但运行标题应该在标题格式。这是我需要的图片:
到目前为止,我已经能够完成以下任务:
现在我需要将运行标题放在标题格式如第一张图片所示。以下是我编写的代码,用于将章节标题居中并更改书籍类的默认运行标题。但我无法获得第一张图片中的运行标题。
\documentclass[a4paper,oneside,14pt]{extbook}
\usepackage{newtxtext}
\usepackage{setspace}
\usepackage[top=25mm,bottom=25mm,right=25mm,left=30mm]{geometry}
\usepackage{lipsum}
\renewcommand{\chaptername}{CHAPTER}
\renewcommand{\contentsname}{TABLE OF CONTENTS}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\addtolength{\headheight}{0pt}
\lhead{\itshape \chaptername ~\thechapter}
\rhead{\itshape \leftmark}
\renewcommand{\chaptermark}[1]{\markboth{#1}{}} % remove "Chapter N." prefix
\cfoot{\thepage}
%% Center Chapter Headings in both front and main matter.
\makeatletter
\def\@makechapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering\normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\huge\bfseries \@chapapp\space \thechapter
\par\nobreak
\vskip 20\p@
\fi
\fi
\interlinepenalty\@M
\huge \bfseries #1\par\nobreak
\vskip 40\p@
}}
\def\@makeschapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering
\normalfont
\interlinepenalty\@M
\huge \bfseries #1\par\nobreak
\vskip 40\p@
}}
\makeatother
\begin{document}
\begin{titlepage}
\centering
Some Info here.
\end{titlepage}
\frontmatter
\chapter{DEDICATION}
\chapter{ACKNOWLEDGMENTS}
\chapter{ABSTRACT}
\tableofcontents
\chapter{LIST OF ABBREVIATIONS}
\chapter{LIST OF FIGURES}
\chapter{LIST OF TABLES}
\mainmatter
\onehalfspacing
\chapter{INTRODUCTION}
\section{First Section}
\lipsum[2-16]
\chapter{RECOMMENDATIONS AND FUTURE WORK}
\singlespacing
\begin{thebibliography}{100}
\end{thebibliography}
\end{document}
我很感激你的建议。
答案1
textcase
是你的朋友。出于多种原因,我不会在标题本身中硬编码大写字母。主要原因是,将它们大写使得标题中不可能没有大写字母 - 这正是你试图实现的。不幸的是,你不能使用,titlsec
因为你需要在章节标题的重新定义中使用大写字母(当你没有在标题本身中硬编码大写字母时!)。代码如下:
\documentclass[a4paper,oneside,14pt]{extbook}
\usepackage{newtxtext}
\usepackage{setspace}
\usepackage[top=25mm,bottom=25mm,right=25mm,left=30mm]{geometry}
%\usepackage{titlesec}
% \titleformat{\chapter}[display]{\centering\normalfont\huge\bfseries}
% {\MakeUppercase{\chaptertitlename}\ \thechapter}{20pt}{\huge}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
% \addtolength{\headheight}{0pt}% obsolete
\lhead{\itshape \chaptername~\thechapter}
\rhead{\itshape \nouppercase{\leftmark}} %\nouppercase !
\renewcommand{\chaptermark}[1]{\markboth{#1}{}}
\cfoot{\thepage}
\usepackage{textcase}
\makeatletter
\def\@makechapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering\normalfont
\ifnum \c@secnumdepth >\m@ne
\if@mainmatter
\huge\bfseries \MakeTextUppercase{\@chapapp}\space \thechapter
\par\nobreak
\vskip 20\p@
\fi
\fi
\interlinepenalty\@M
\huge \bfseries \MakeTextUppercase{#1}\par\nobreak
\vskip 40\p@
}}
\def\@makeschapterhead#1{%
\vspace*{50\p@}%
{\parindent \z@ \centering
\normalfont
\interlinepenalty\@M
\huge \bfseries \MakeTextUppercase{#1}\par\nobreak
\vskip 40\p@
}}
\makeatother
%\renewcommand{\chaptername}{CHAPTER}
%\renewcommand{\contentsname}{TABLE OF CONTENTS}
\usepackage{lipsum}
\begin{document}
\frontmatter
\chapter{Dedication}
\tableofcontents
\chapter{List of Abbreviations}
\mainmatter
\onehalfspacing
\chapter{Introduction}
\section{First Section}
\lipsum[2-16]
%\singlespacing
%\begin{thebibliography}{100}
%\end{thebibliography}
\end{document}
请注意,我将该titlesec
尝试作为未注释的代码行包含在内。