如何在.Rmd html输出中跨平台强制使用相同的代码块字体?

时间:2017-02-07 20:01:22

标签: css r knitr r-markdown

我遇到了一个问题,我的l1看起来非常相似,以至于混淆了一些我已经查看过代码的初学者。

我认为通过将此字体添加到css样式表中,我可以强制字体在我的.html输出平台上保持不变:

code {
  font-family: "Andale Mono", AndaleMono, monospace;
}

但是我被告知它没有成功 - l1仍然难以分辨。

有没有办法强制代码在不同平台上进行相同的渲染?

1 个答案:

答案 0 :(得分:1)

您可以使用Google字体等网络字体。以Source Code Pro为例。 Google会告诉您将其添加到HTML文档的<head>区域:

<link href="https://fonts.googleapis.com/css?family=Source+Code+Pro" rel="stylesheet">

并将CSS规则应用于<code>元素:

code {
  font-family: 'Source Code Pro', monospace;
}

对于R Markdown文档,您可以通过includes option<head>添加内容。例如,将上面的<link>代码保存在名为google-font.html的文件中,与Rmd文件位于同一目录下,将CSS保存在google-font.css中,并保存在Rmd的YAML中:

---
title: Your Document Title
output:
  html_document:
    includes:
      in_header: "google-font.html"
    css: "google-font.css"
---