字体大小和行间距R Slidify

时间:2014-05-19 21:42:59

标签: css r html5 knitr slidify

我正在尝试创建我的第一个Slidify演示文稿。我是JS,CSS和HTML5的新手。我使用以下YAML材料和R Markdown代码。我想创建一个简单的幻灯片,显示R可以用作大型计算器。我的问题是我只能将3个简单的表达式和它们返回的输出放在一张幻灯片上。因此,我非常感谢有关如何更好地控制Slidify输出的任何可能的建议(较小的字体大小,或围绕突出显示的语法和评估/返回的R输出的较小边框)。

以下是我的.Rmd文件:

---
title       : An Introduction to R
subtitle    : Getting You "R Aware" And Beyond
author      : Christopher Meaney
job         : Biostatistician, University of Toronto
framework   : io2012        # {io2012, html5slides, shower, dzslides, ...}
highlighter : highlight.js  # {highlight.js, prettify, highlight}
hitheme     : tomorrow      # 
widgets     : []            # {mathjax, quiz, bootstrap}
mode        : selfcontained # {standalone, draft}

--- .nobackground 

## R Can be Used as A Big Calculator

```{r, results='asis', echo=TRUE}
## Addition
1 + 1
## Exponentiation followed by multiplication (BEDMAS)
4*5^2
## Area of a circle of radius r=2
pi*2^2
## Natural logarithm of 1 multiplied by exponential (function) evaluated at 0
log(1)*exp(0)
```

在Github上对这个问题进行了很好的讨论。 https://github.com/ramnathv/slidify/issues/189 但是,我似乎无法解开@ Robert的部分答案中的哪一部分涉及语法高亮与字体大小和边框调整。此外,讨论中提出了许多建议的解决方案,这对于菜鸟来说最容易实现?

作为后续行动,我如何全局设置/应用此选项,以便knitr评估并由slidify提供的所有R块具有相同的小/压缩属性?

1 个答案:

答案 0 :(得分:2)

我相信这不是解决问题的最有效方法。但是,它似乎实现了许多目标。所以我会把它写下来等着看是否有更好的解决方案。

我要调整其字体(和其他格式)的R语法位于一对<pre> </pre>标记之间。

我要调整其字体(和其他格式)的R输出位于一对<p> </p>标记之间。

我只想调整一些幻灯片上的代码。所以我创建了以下CSS文件。我将它们存储在目录:.../mydeck/assets/css/

这是过度杀伤(可能不是全部必要)。

文件1(... / mydeck / assets / css / codefont.css)

slide.codefont pre {
font-size: 9px ;
}

文件2(... / mydeck / assets / css / outfont.css)

slide.outfont p {
font-size: 9px ;
}

文件3(... / mydeck / assets / css / codemargin.css)

slide.codemargin pre {
margin-top: -10px ;
margin-bottom: -10px ;
padding-top: -10px ;
padding-bottom: -10px ;
}

文件4(... / mydeck / assets / css / outmargin.css)

slide.outmargin p {
margin-top: -10px ;
margin-bottom: -10px ;
padding-top: -10px ;
padding-bottom: -10px ;
}

然后当我在.Rmd文件中指定我的简单R作为大计算器幻灯片时,我只需添加以下内容:

--- .codefont .outfont .codemargin .outmargin .nobackground 

## R Can be Used as A Big Calculator

```{r, results='asis', echo=TRUE}
## Addition
1 + 1
## Exponentiation followed by multiplication (BEDMAS)
4*5^2
## Area of a circle of radius r=2
pi*2^2
## Natural logarithm of 1 multiplied by exponential (function) evaluated at 0
log(1)*exp(0)
```

这使得R语法和R输出小于默认值。它还会削减R语法和R输出之间的一些空白区域。

  • 我希望删除R语法高亮显示中的一些未使用的空白区域(在边框和实际的R代码之间)。
  • 也对使用较少CSS文件(1或2个CSS文件而非4个)完成相同结果的可能性的评论感兴趣。
  • 另外,关于如何在R代码出现的所有幻灯片中实现此方法的想法(因此我不必将--- .codefont .outfont .codemargin .outmargin连续添加到由R代码组成的所有幻灯片中。能够将整个内容包装起来可以将font=, margin=, padding=指定为参数的函数很酷。

仍在考虑这是一个悬而未决的问题......谢谢。