这是一种简单的方法,但将所有内容都保留在 rmarkdown 中,结合了scoa 的最佳答案并使用了其他stackoverflow 示例中的一些技巧。
它从bookdown 演示
preamble.tex开始,在底部添加了两行。
\usepackage{booktabs}
\usepackage{pdfpages}
\usepackage{amsthm}
\makeatletter
\def\thm@space@setup{%
\thm@preskip=8pt plus 2pt minus 4pt
\thm@postskip=\thm@preskip
}
\makeatother
\let\oldmaketitle\maketitle
\AtBeginDocument{\let\maketitle\relax}
制作这个新文件 ,before_body.tex您希望将 pdf 的第 1 页称为cover_pdf.pdf文档的封面。
\includepdf[pages={1}, scale=1]{cover_pdf.pdf}
\newpage
\let\maketitle\oldmaketitle
\maketitle
编辑_output.yml以包含您的before_body.tex,结果如下:
bookdown::gitbook:
css: style.css
config:
toc:
before: |
<li><a href="./">A Minimal Book Example</a></li>
after: |
<li><a href="https://github.com/rstudio/bookdown" target="blank">Published with bookdown</a></li>
edit: https://github.com/rstudio/bookdown-demo/edit/master/%s
download: ["pdf", "epub"]
bookdown::pdf_book:
includes:
in_header: preamble.tex
before_body: before_body.tex
latex_engine: xelatex
citation_package: natbib
keep_tex: yes
bookdown::epub_book: default
那你应该很甜!
如果您遇到问题,可以从这个 github repo 分支下载或克隆一个工作示例