如何为前言,确认等内容获取罗马数字,并在R Bookdown中为第一章的第一页重启阿拉伯语编号。
我想在bookdown中呈现为pdf,但是没有找到关于如何更改页面编号的任何好信息
感谢
答案 0 :(得分:11)
请同时查看the answer by @maxheld。它更简单,并且对于许多用例来说足够了。另一个不需要编辑模板的简单解决方案是:
---
title: Page Numbering in R Bookdown
documentclass: book
output:
bookdown::pdf_book: default
header-includes:
- \AtBeginDocument{\frontmatter}
---
\mainmatter
# Header 1
Some text
\backmatter
# Appendix 1
Some text
这会在正确的位置插入\frontmatter
,\mainmatter
和\backmatter
。
使用book
文档类,使用LaTeX生成PDF输出。在本课程中,您可以使用\frontmatter
,\mainmatter
和\backmatter
分隔不同的'部分'这本书。为了与bookdown
一起使用,我执行了以下操作:
<R-library-path>/rmarkdown/rmd/latex/default-1.17.0.2.tex
复制为book.tex
到工作目录book.tex
以包含\frontmatter
,\mainmatter
和\backmatter
(下面的差异)_output.yml
以book.tex
为template
(下面的差异)通过这些更改,使用bookdown
生成的PDF将(Toeercase)罗马数字用于ToC,并使用实际正文的阿拉伯数字重新启动。差异:
diff --git a/_output.yml b/_output.yml
index 112cf5b..b211ba7 100644
--- a/_output.yml
+++ b/_output.yml
@@ -13,5 +13,6 @@ bookdown::pdf_book:
in_header: preamble.tex
latex_engine: xelatex
citation_package: natbib
+ template: book.tex
bookdown::epub_book:
stylesheet: style.css
diff --git a/book.tex b/book.tex
index 0f9979d..3d03540 100644
--- a/book.tex
+++ b/book.tex
@@ -235,6 +235,9 @@ $header-includes$
$endfor$
\begin{document}
+$if(book-class)$
+\frontmatter
+$endif$
$if(title)$
\maketitle
$endif$
@@ -263,8 +266,14 @@ $endif$
$if(lof)$
\listoffigures
$endif$
+$if(book-class)$
+\mainmatter
+$endif$
$body$
+$if(book-class)$
+\backmatter
+$endif$
$if(natbib)$
$if(bibliography)$
$if(biblio-title)$
答案 1 :(得分:6)
我认为按照自己bookdown krantz
example中使用的@yihui示例可能更容易:
添加以下文件,可能在/latex
子文件夹中:
preamble.tex
最后使用latex \frontmatter
命令,after_body.tex
使用latex \backmatter
命令,然后,在您的第一个实际主体之前,只需将\mainmatter
命令(仅在乳胶中)添加到您的index.Rmd
(以您的{{1}为准s是第一个,通常是*.Rmd
)。
然后,修改你的index.Rmd
,如此:
_output.yml
这会将正确的bookdown::pdf_book:
includes:
in_header: latex/preamble.tex
after_body: latex/after_body.tex
,\frontmatter
和\mainmatter
命令散布到您的pandoc-ed乳胶书中。它将受到大多数样式文件的尊重,以确保阿拉伯语编号仅在主要内容中开始。
这也记录在书籍的publishing chapter中。
答案 2 :(得分:0)
实际上非常简单:
在最重要的部分中执行以下操作:
\cleardoublepage
\pagenumbering{roman}
在主要问题部分:
\cleardoublepage
\pagenumbering{arabic}