[英]References Truncated in Beamer Presentation prepared in Knitr/RMarkdown
我目前正准备在RStudio中进行演示(使用RMarkdown和Knitr,输出到Beamer演示文稿),其中有很多参考文献。
我使用的是非常典型的YAML标头:
---
title: "Title"
author: "Me"
date: "February 27th, 2016"
output:
beamer_presentation
csl: ../../apa.csl
bibliography: ../../RefenceDesk.bib
---
此演示文稿编译并且引用按原样显示,但不幸的是它们都出现在一张幻灯片上(实际上是在页面上运行)。 有没有办法让参考文献出现在多张幻灯片上?
{.allowframebreaks}
是投影机中多层{.allowframebreaks}
书目的解决方案。 它使用常规的pandoc模板开箱即用(参见我之前的回答 )。 但是, knitr
有一个设置可以防止它,通过在其beamer模板中重新定义\\widowpenalties
。 如果使用keep_tex: true
检查.tex
文件,则可以验证。
在我看来,这是一个错误。 快速解决方法是将\\widowpenalties
重置为其默认值。 它可以在您的yaml前端事项中完成:
---
title: Title
header-includes:
- \widowpenalties 1 150
output:
beamer_presentation
---
然后,您可以指示参考部分:
## References {.allowframebreaks}
正如@David上面在评论中所说:
对我而言,它并没有使用## References {.allowframebreaks},但它使用了#References {.allowframebreaks}。
我想指出的是,显然要使参考幻灯片工作,你必须创建一个最后一张幻灯片,其中标题级别由slide_level: __
设置slide_level: __
在YAML部分。
因此,用户应设置以下之一:
slide_level: 1
,OR slide_level: 2
,OR slide_level: 3
等等...... 虽然这不使用常规的pandoc引用模板,但我发现了另一种可用于将引用放在幻灯片上的方法,但它依赖于natbib
引用包。
在YAML前面,我补充说:
---
title: "Title"
output:
beamer_presentation:
citation_package: natbib
bibliography: ../../RefenceDesk.bib
biblio-style: "apalike"
---
参考幻灯片没有获得标题,我似乎无法调整字体大小(通过在.Rmd
文件的末尾使用\\scriptsize
),但至少它们是连贯的。
编辑:对于简约性,我删除了csl: ../../apa.csl
行,因为natbib不需要它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.