【问题标题】:Font Size and Line Spacing R Slidify字体大小和行距 R Slidify
【发布时间】:2014-07-08 00:01:38
【问题描述】:

我正在尝试创建我的第一个 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 块都具有相同的小/压缩属性?

【问题讨论】:

  • 试试{r, results='asis', echo=TRUE, size="scriptsize"}
  • 感谢@Andire 的建议。不幸的是,size=scriptsize 参数对slidify 显示的 R 输出的大小没有任何影响。
  • @Andrie size 仅用于 LaTeX 输出(至少目前如此)

标签: css r html knitr slidify


【解决方案1】:

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

我要调整其字体(和其他格式)的 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 ;
}

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

--- .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 代码之间)。
  • 还对 cme​​ts 感兴趣,即使用更少的 CSS 文件(1 或 2 个 CSS 文件而不是 4 个)实现相同结果的可能性。
  • 另外,关于如何在所有出现 R 代码的幻灯片上实施这种方法的想法(所以我不必不断地将--- .codefont .outfont .codemargin .outmargin 添加到由 R 代码组成的所有幻灯片中。能够将整个内容包装在一个函数中其中font=, margin=, padding= 可以指定为参数会很酷。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-30
    • 2021-07-08
    • 2020-03-16
    • 1970-01-01
    • 2018-07-26
    • 1970-01-01
    相关资源
    最近更新 更多