将多个框架选项传递给 rmarkdown::beamer_presentation 中的单个框架
Passing multiple frame options to a single frame in an rmarkdown::beamer_presentation
如何将多个框架选项传递给 rmarkdown::beamer_presentation
中的特定框架?
在下面的 MWE 中,第二帧应包含与前一帧相同的 table,只是多了几行。
因此,
两个框架的页码编号最好相同 (=> {.noframenumbering}
)
只需将第 2 帧的行添加到第 1 帧的下方,两帧的内容应为 top-aligned (=> {.t}
)。
由于其他一些幻灯片要求框架内容垂直居中对齐,因此不希望在 YAML header 中设置 classoption: t
。
MWE
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
slide_level: 2
keep_tex: true
---
## Slide
```{r table, cars, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:3, 1:3]), caption = "Table caption")
```
## Slide {.noframenumbering}
```{r table, cars2, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:6, 1:3]), caption = "Table caption")
```
(在 YAML-header 中添加多个类选项是可行的,方法是用逗号分隔它们,例如 classoption: t, aspectratio=169
。同样的方法对我来说在为单个帧调整它们时不起作用,即, ## Slide {.noframenumbering,.t}
.)
您可以使用以下语法将多个选项传递给一个框架:
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
slide_level: 2
keep_tex: true
---
## Slide {.t}
```{r table, cars, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:3, 1:3]), caption = "Table caption")
```
## Slide {.noframenumbering .t}
```{r table, cars2, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:6, 1:3]), caption = "Table caption")
```
使用 pandoc 2.17.1.1 或更新版本,框架选项现在更容易:
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
slide_level: 2
keep_tex: true
---
## Slide {frameoptions="t"}
```{r table, cars, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:3, 1:3]), caption = "Table caption")
```
## Slide {frameoptions="noframenumbering,t"}
```{r table, cars2, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:6, 1:3]), caption = "Table caption")
```
如何将多个框架选项传递给 rmarkdown::beamer_presentation
中的特定框架?
在下面的 MWE 中,第二帧应包含与前一帧相同的 table,只是多了几行。
因此,
两个框架的页码编号最好相同 (=>
{.noframenumbering}
)只需将第 2 帧的行添加到第 1 帧的下方,两帧的内容应为 top-aligned (=>
{.t}
)。 由于其他一些幻灯片要求框架内容垂直居中对齐,因此不希望在 YAML header 中设置classoption: t
。
MWE
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
slide_level: 2
keep_tex: true
---
## Slide
```{r table, cars, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:3, 1:3]), caption = "Table caption")
```
## Slide {.noframenumbering}
```{r table, cars2, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:6, 1:3]), caption = "Table caption")
```
(在 YAML-header 中添加多个类选项是可行的,方法是用逗号分隔它们,例如 classoption: t, aspectratio=169
。同样的方法对我来说在为单个帧调整它们时不起作用,即, ## Slide {.noframenumbering,.t}
.)
您可以使用以下语法将多个选项传递给一个框架:
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
slide_level: 2
keep_tex: true
---
## Slide {.t}
```{r table, cars, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:3, 1:3]), caption = "Table caption")
```
## Slide {.noframenumbering .t}
```{r table, cars2, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:6, 1:3]), caption = "Table caption")
```
使用 pandoc 2.17.1.1 或更新版本,框架选项现在更容易:
---
output:
bookdown::pdf_book:
base_format: rmarkdown::beamer_presentation
slide_level: 2
keep_tex: true
---
## Slide {frameoptions="t"}
```{r table, cars, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:3, 1:3]), caption = "Table caption")
```
## Slide {frameoptions="noframenumbering,t"}
```{r table, cars2, echo = FALSE}
library(kableExtra)
knitr::kable(head(mtcars[1:6, 1:3]), caption = "Table caption")
```