使用Rmarkdown和revealjs在每张幻灯片中包含一个页脚

时间:2017-10-30 19:14:22

标签: r r-markdown pandoc reveal.js

我的公司要求所有内部+外部演示文稿都为每张幻灯片使用经过批准的页脚,这会促使每个人将内容复制并粘贴到PowerPoint中。

但是,我很乐意使用R笔记本制作revealjs_presentation幻灯片。任何人都可以提供一个简单的Rmarkdown笔记本(或pandoc模板)示例吗?我可以修改它吗?

我想这对很多公司的很多人都有用。

1 个答案:

答案 0 :(得分:4)

可以使用includes中的revealjs::revealjs_presentation参数/参数在所有幻灯片上添加固定的页脚。 (非常感谢早期的评论者的建议,这使我想到了这一点。)

例如,我想在每张幻灯片上添加公司徽标和免责声明页脚。我创建了一个HTML文件,该文件包含在文档主体之前,具有以下内容:

<div id="header-footer">
  <img class="slide-logo" src="corporate-logo.png"/>
  <p class="slide-footer">Corporate disclaimer</p>
</div>

然后,我在R降价文档(Rmd文件)的YAML标头中将带有includes参数的代码片段放在文档正文之前:

output: 
  revealjs::revealjs_presentation:
    css: styles.css
    includes:
      in_header: header.html

然后,为了将徽标放置在右上角并将页脚固定在每张幻灯片的底部,我使用了以下CSS(存储在styles.css中):

/********** Customise logo, and footer disclaimer **********/
/* Position the corporate logo in the top right of the page */
#header-footer .slide-logo {
  position: absolute;
  top: 15px;
  right: 50px;
  height: 60px;
  width: 150px;
}


/* Style/position the footer text */
#header-footer .slide-footer {
    position: fixed; 
    bottom: 0;
    left: 0;
    right: 0;
    height: 10px;
    text-align: center;
    font-size: 65%;
}

当然,您可以使用CSS进行样式设置。

一个限制是将徽标和页脚放置在每张幻灯片上,包括标题(但带有全幻灯片背景图像的幻灯片除外,该幻灯片隐藏了免责声明和徽标)。我目前正在尝试找出一种方法来限制某些幻灯片的徽标/免责声明。

我还没有做,但是应该可以将其包装到自定义模板中,以便直接与您组织的新RMarkdown文档集成,例如参见RMarkdown book中的第17和18章。

我希望这对您/其他人还是有用的。