我正在努力用 markdown 为我的论文构建基本的 pdf 文档。它运行良好,直到我尝试使用 \usepackage{fancyhdr} 添加标题。然后它返回错误
! Undefined control sequence.
<argument> \undefinedpagestyle
我还意识到主 miktex 文件夹中没有写着 fancyhdr 的文件夹。
这是我的 yaml 标头:
---
output:
bookdown::pdf_document2:
toc: true
toc_depth: 3
number_section: true
header-includes:
- \usepackage{float}
- \usepackage{fancyhdr}
- \usepackage[margins=raggedright]{floatrow}
- \usepackage{placeins}
- \usepackage{chngcntr}
- \counterwithin{figure}{section}
- \counterwithin{table}{section}
- \usepackage[german]{babel}
fontsize: 11pt
linestretch: 1.5
lang: de-DE
geometry: margin=2.5cm
link-citations: true
---
以下是我在代码中使用页面样式的方法:
``` {r setup, include=FALSE}
library(knitr)
library(tidyverse)
opts_chunk$set(echo=FALSE)
```
\pagebreak
\pagenumbering{Roman}
\newpage
\listoffigures
\newpage
\listoftables
\newpage
\section*{Abkürzungsverzeichnis}
\pagebreak
\pagenumbering{arabic}
\pagestyle{fancy}
\fancyhead[LO,LE]{\leftmark}
\fancyfoot[CO,CE]{\thepage}
\renewcommand{\footrulewidth}{\headrulewidth}
我对这个错误感到很困惑,因为我朋友的文件在 fancyhdr 区域看起来完全一样。他没有收到任何错误。
请帮忙!
答案1
三个问题:
标题的缩进是错误的。
header-includes
无法缩进。它不是的属性,pdf_document2
但需要位于顶层你不能组合
floatrow
和float
包rmarkdown 会自动加载 babel。您无法使用不同的选项再次加载它
---
output:
bookdown::pdf_document2:
toc: true
keep_tex: true
toc_depth: 3
number_section: true
header-includes:
- \usepackage{fancyhdr}
- \usepackage[margins=raggedright]{floatrow}
- \usepackage{placeins}
- \usepackage{chngcntr}
- \counterwithin{figure}{section}
- \counterwithin{table}{section}
fontsize: 11pt
linestretch: 1.5
lang: de-DE
geometry: margin=2.5cm
link-citations: true
---
``` {r setup, include=FALSE}
library(knitr)
library(tidyverse)
opts_chunk$set(echo=FALSE)
```
\pagebreak
\pagenumbering{Roman}
\newpage
\listoffigures
\newpage
\listoftables
\newpage
\section*{Abkürzungsverzeichnis}
\pagebreak
\pagenumbering{arabic}
\pagestyle{fancy}
\fancyhead[LO,LE]{\leftmark}
\fancyfoot[CO,CE]{\thepage}
\renewcommand{\footrulewidth}{\headrulewidth}
test