不久前,我开始使用 LaTeX 来撰写我的博士论文。我现在用的是 Overleaf。我已经学到了很多东西,但我无法让附录看起来有某种样子。
- 我怎样才能在第一行显示章节编号(附录 A.1),在下一行显示标题(标题)?
- 我在编号中添加了“附录”一词。如何修复目录中编号和标题之间的重叠?
在章节中,标题中的文本全部大写,但附录中并非如此。
- 如何将标题中的文字改为全部大写?
。
\documentclass[10pt,twoside,openright]{book}
\usepackage{geometry}
\geometry{
vmarginratio=7:5,
hmarginratio=1:1,
papersize={170mm,240mm},
total={130mm,190mm}
}
\usepackage[T1]{fontenc}
% package voor de laatste versie van het standaard lettertype
\usepackage{lmodern}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{lipsum}
\pagestyle{headings}
\begin{document}
\frontmatter
\tableofcontents
\mainmatter
\chapter{Introduction}
\lipsum[1-4]
\section{This is how we do it}
\lipsum[1-4]
\chapter{Results}
\lipsum[1-5]
\appendix
\renewcommand{\thesection}{Appendix \Alph{chapter}.\arabic{section}}
\renewcommand\chaptermark[1]{\markboth{\appendixname~\thechapter}{}}
\chapter{Appendices for Chapter 1}
Here we present two subappendices that correctly show the Appendix A thumb mark.
\cleardoublepage
\section{Title}
\thispagestyle{plain}
\lipsum[1-8]
\cleardoublepage
\section{Another title}
\thispagestyle{plain}
\lipsum[1-8]
\end{document}
答案1
你问了三个问题。
我怎样才能在第一行显示章节编号(附录 A.1),在下一行显示标题(标题)?
我实际上不建议您在章节标题(“附录 A.1”)和相关章节文本之间插入换行符。鉴于章节编号和章节标题在文档的其他地方都排版在同一行,您的读者可能会发现在(现在已扩充的)章节“编号”和章节标题本身之间出现换行符很奇怪(如果不是完全分散注意力的话)。
以下建议显示如何在章节编号前插入前缀“附录”。
我在编号中添加了“附录”一词。如何修复目录中编号和标题之间的重叠?
我建议你删除(或注释掉)该指令
\renewcommand{\thesection}{Appendix \Alph{chapter}.\arabic{section}}
并在指令后立即插入以下代码\appendix
:
\makeatletter
\def\@seccntformat#1{\@ifundefined{#1@cntformat}%
{\csname the#1\endcsname\quad}% default
{\csname #1@cntformat\endcsname}}% enable individual control
\newcommand\section@cntformat{\appendixname~\thesection\quad}
\makeatother
此解决方案不仅解决了目录中的重叠问题,还使创建附录部分的交叉引用变得简单。请注意,此解决方案确实不是在内容条目的标题中插入字符串\appendixname
;这是故意的,因为读者应该能够轻松地找出章节条目属于附录 A(或其他编号附录)。
章节中的标题文字全部大写,但附录中的不是。如何将标题文字改为全部大写?
我建议你改变
\renewcommand\chaptermark[1]{\markboth{\appendixname~\thechapter}{}}
到
\renewcommand\chaptermark[1]{\markboth{\MakeUppercase{\appendixname}~\thechapter}{}}
最后一点:Latin Modern Sans 通常不被视为适合大量连续文本的无衬线字体。要加载 Helvetica 克隆,只需插入指令
\usepackage{helvet}
跑步前\renewcommand{\familydefault}{\sfdefault}
。
\documentclass[10pt,twoside,openright]{book}
\usepackage{geometry}
\geometry{
vmarginratio=7:5,
hmarginratio=1:1,
papersize={170mm,240mm},
total={130mm,190mm}
}
\usepackage[T1]{fontenc}
\usepackage[dutch]{babel} % ?
% package voor de laatste versie van het standaard lettertype
\usepackage{lmodern}
\usepackage{helvet} % LM Sans isn't a very good font for running text
\renewcommand{\familydefault}{\sfdefault}
\usepackage{tikz}
\usetikzlibrary{calc}
\usepackage{lipsum}
\pagestyle{headings}
\begin{document}
\frontmatter
\tableofcontents
\bigskip\noindent % just for this example
A cross-reference to appendix section \ref{sec:app:1}.
\mainmatter
\chapter{Introduction}
\lipsum[1-4]
\section{This is how we do it}
\lipsum[1-4]
\chapter{Results}
\lipsum[1-5]
\appendix
%\renewcommand{\thesection}{Appendix \Alph{chapter}.\arabic{section}}
\makeatletter
\def\@seccntformat#1{\@ifundefined{#1@cntformat}%
{\csname the#1\endcsname\quad}% default
{\csname #1@cntformat\endcsname}}% enable individual control
\newcommand\section@cntformat{\appendixname~\thesection\quad}
\makeatother
\renewcommand\chaptermark[1]{\markboth{\MakeUppercase{\appendixname}~\thechapter}{}}
\chapter{Appendices for Chapter 1}
Here we present two appendix sections which correctly show the ``Appendix~A'' thumb mark.
\cleardoublepage
\section{Title} \label{sec:app:1}
\thispagestyle{plain}
\lipsum[1-8]
\cleardoublepage
\section{Another title}
\thispagestyle{plain}
\lipsum[1-8]
\end{document}
附录回答 OP 的后续问题,关于在附录章节编号和相关章节标题之间创建换行符。为了实现此目标,我建议您 (a)titlesec
在序言中加载包,(b) 删除代码块
\makeatletter
\def\@seccntformat#1{\@ifundefined{#1@cntformat}%
{\csname the#1\endcsname\quad}% default
{\csname #1@cntformat\endcsname}}% enable individual control
\newcommand\section@cntformat{\appendixname~\thesection\quad}
\makeatother
(c)在 之后插入下列指令\appendix
:
\titleformat{\section}[display]{\normalfont\Large\bfseries}{%
\appendixname~\thesection}{0pt}{}