我正在使用RStudio从RMarkdown生成的一些ioslides。我希望能够将一个Rmd中的渲染幻灯片包含在另一个Rmd中。
截至目前,我只知道如何包含原始Rmw - 而不是HTML输出。
---
title: "Main course slides"
author: "author"
date: "November 8, 2015"
output: ioslides_presentation
---
## Some content
```{r child='lecture1.Rmd'}
```
```{r child='lecture2.Rmd'}
```
这个问题是它必须呈现每个Rmd文件,即使它已经被编译为HTML。
有没有人知道如何直接将ioslides的HTML输出包含到另一个ioslides中?
答案 0 :(得分:2)
嗯,我试过了,这是有可能的。 我的解决方案适用于Firefox 。可能不在另一个浏览器中(尝试一下),当然不在RStudio Viewer中。
请使用以下两个文件inner.Rmd
和outer.Rmd
:
<强> outer.Rmd 强>
---
title: "Test"
output: ioslides_presentation
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```
<style>
#frame {
-moz-transform: scale(0.6, 0.6);
-moz-transform-origin: 0 0;
width: 1200px;
height: 720px;
}
#wrapper {
position: relative;
width: 100%;
left: 54%;
transform: translate(-50%, 0);
}
</style>
## R Markdown
Does nesting presentations work well?
## Slide with another presentation inside
<div id="wrapper">
<iframe id="frame" src="inner.html"></iframe>
</div>
<强> inner.Rmd 强>
---
title: "Test"
output: ioslides_presentation
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```
## R Markdown
It works!
## Yay!
Yippie!
我尝试了不同的方法。只有iframe
方法给了我想要的东西。使内部幻灯片居中是很棘手的。我最终将包装div居中,如
left: 54%;
transform: translate(-50%, 0);
不确定为什么这个4%的差异是必要的。但它的确有效: