在使用markdown -> pandoc准备的HTML5幻灯片中更改字体大小

10

我正在使用以下工作流程创建HTML幻灯片:

  • 代码编写在R Studio编辑器0.97.248中
  • 使用knitr 0.8创建.md文档
  • 使用pandoc 1.10.1从.md文件创建HTML5幻灯片

这是Yihui Xie在这里描述的工作流程;这是我所知道的使用Markdown制作幻灯片的最简单的方法。

我的问题是,即使是相对较短的一行代码(50个字符),也会跑到幻灯片的右侧,因为默认的代码字体很大且间距很宽。

例如,以下幻灯片:

# Title of the slide
And some text.

````{r plotChunk, message=FALSE, fig.height=5, fig.width=5}
require(ggplot2)
ggplot(mpg, aes(x=displ, y=cty, colour=class)) + geom_point()
````

生成以下幻灯片:

enter image description here

我可以使用代码选项tidy=FALSE手动拆分代码行,但是我永远无法将大量代码放在一行上。有没有办法在HTML文档中使默认正文字体和代码字体变小?


7
你可以使用自己的模板:http://johnmacfarlane.net/pandoc/README.html#templates,并在CSS中为`pre`定义较小的字体,例如`pre {font-size: 10px;}`;默认模板在这里:https://github.com/jgm/pandoc-templates/blob/master/default.dzslides。 - Yihui Xie
5
你也可以使用Slidify,它可以在R内完全处理将R Markdown转换为HTML幻灯片,并支持超过10个框架(包括dzslides)。声明:我是Slidify的作者。 - Ramnath
1个回答

8
@Yihui和@Ramnath都为我的问题提供了有效的解决方案。由于每个人都选择在评论中回复,所以我想指出我发现slidify是一个更快的解决方案,因为我需要修改默认的pandoc格式来制作漂亮的幻灯片。将上面由pandoc创建的幻灯片与下面由slidify创建的相同幻灯片进行比较:

enter image description here

slidify默认选择更合适的代码大小。

我使用pandoc遇到麻烦的一个原因可能是系统特定的(运行Mac OSX 10.7.5,R 2.15.1,R Studio 0.97.248,pandoc 1.10.1)。在问题的图表中,看到块的名称印在图表上而不是下面。当我从他的.Rmd源文件转换Yihui的幻灯片时,我得到了不同(更糟糕)的输出结果。请注意下面的“html”文本,它显然是前一张幻灯片中的剩余文本,其中一行文本从屏幕的右侧溢出。

enter image description here

最后,在slidify中,fig.heightfig.width选项按预期工作,而pandoc似乎会重新调整图形大小以填充幻灯片。请注意问题中绘图的低分辨率-它是一个小绘图,pandoc已经将其放大了。

我认为pandoc将对从RMarkdown创建多种格式的文档非常有用,但对于在我的系统上制作快速幻灯片,slidify似乎是开箱即用的更好解决方案。


2
你说得对。Pandoc是一款瑞士军刀般的工具,可以帮助在多种格式之间进行转换。而Slidify则只专注于将Rmd转换为HTML这一单一目标。 - Ramnath

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接