Xaringan:在保留格式的同时将幻灯片导出为 PDF

Xaringan: Export slides to PDF while preserving formatting

我有一个像这样的 Xaringan 幻灯片:

---
title: "Xaringan test"
output: 
  xaringan::moon_reader:
    self_contained: false
    chakra: 'assets/remark-latest.min.js'
    css: 'assets/presentation.css'
---

### This is a heading

This is some text and numbers 01235.

`Here is some inline code`.

```
block code
```

```{r}
cat("Some R code")
```

$e^{i\pi} + 1 = 0$

渲染后的 HTML 如下所示。自定义字体、CSS 样式和 mathjax 都呈现良好。这就是它的外观。


正在使用 Pagedown 导出为 PDF。

pagedown::chrome_print("test.html",output="test.pdf")

保留自定义字体和 css 样式。默认代码字体已更改,不显示 mathjax 表达式。除了缺少的 mathjax 之外,它做得非常好。


正在使用 webshot 导出为 PDF。

webshot("test.html","test.pdf")

自定义字体和 css 样式未保留。保留默认代码字体和 mathjax。


有人知道如何在通过函数导出为 PDF 时保留字体、CSS 样式和 mathjax 吗?

R version 3.5.2 (2018-12-20)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Ubuntu 18.04.2 LTS
webshot_0.5.1      
pagedown_0.1
xaringan_0.8

此时,你必须使用pagedownxaringan的开发版本:https://github.com/yihui/xaringan/issues/168#issuecomment-461638520

编辑:我们已将包重命名为“renderthis”,以便更通用并支持其他演示类型,例如 Quarto 演示:https://github.com/jhelvy/renderthis

而不是build_*(),函数名都以to_*()开头,例如

renderthis::to_pdf("slides.Rmd")

我一直在构建一个包,该包将 xaringan 幻灯片构建为多种输出类型:html、pdf、pptx、gif 和第一张幻灯片的 png 的几个选项。它应该可以很好地呈现为 PDF。

https://github.com/jhelvy/xaringanBuilder

安装包

# install.packages("remotes")
remotes::install_github("jhelvy/xaringanBuilder")

library(xaringanBuilder)

从 Rmd 或 html 文件构建 pdf 文件:

build_pdf("slides.Rmd")
build_pdf("slides.html")

包括“复杂”或部分幻灯片:

“复杂”幻灯片是包含 panelsets 或 其他 html 个小部件/高级功能可能无法像 PDF。要呈现这些,请设置 complex_slides = TRUE。如果你想建立一个 incremental 上每个增量的新幻灯片 幻灯片,设置 partial_slides = TRUE.

build_pdf("slides.Rmd", complex_slides = TRUE, partial_slides = TRUE)
build_pdf("slides.html", complex_slides = TRUE, partial_slides = TRUE)