使用 R Markdown 和 HTML 输出将数学表达式显示为非斜体
display math expression as non-italic using R Markdown and HTML output
习惯上用斜体显示数学 (the tradition dates to Ancient Greece)。但是对于非正式的演示,我不太喜欢它的外观。我正在尝试使用我自己的字体进行数学显示,或者至少摆脱斜体。在 YAML 中使用 mathfont: my-math-font
和 latex_engine: xelatex
更改 pdf_document:
的数学字体很简单,但对于 HTML 输出,它被证明更复杂。
显然,MathJax 用于通过 Pandoc 呈现方程。我尝试通过外部 CSS 文件添加 CSS 规则,或者按照 中的建议直接在 YAML 下添加。显然 Pandoc 将 class .math { }
应用于所有 MathJax 表达式......但是我不太了解 CSS 因此证明正确的参数很困难。据我所知,我的额外 CSS 规则只是被忽略了,因为当我在 R Studio 中编织时斜体仍然存在。
我希望有人有解决办法?这是我正在使用的代码的一个最小示例;要重现它,只需复制粘贴到 .Rmd 文件中,然后使用 ctrl + shift + k
:
编织
---
title: "How to change math font for HTML output?"
output:
html_document
---
```{css}
.math {
font-family: Sans-Serif;
font-style: normal;
}
```
This math equation is still rendered with italics: $\rho~=~\frac{m_{water}}{m_{oven-dry~soil}}$
方法如下:
---
title: "Change MathJax font"
author: "Stéphane Laurent"
date: "05/11/2020"
output: html_document
---
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
"HTML-CSS" : {
availableFonts : ["STIX"],
preferredFont : "STIX",
webFont : "STIX-Web",
imageFont : null
}
});
</script>
$$
\int_0^1 f(x) dx = 0
$$
编辑
现在不行了。要使用不同的字体,您必须下载它们并使用 MathJax 的本地副本。我尝试了所有可用的字体,但所有字体的渲染效果都不佳。
我认为更好的解决方案是使用标准字体并使用 \mathrm
:
$$
\mathrm{\int_0^1 f(x) dx = 0}
$$
习惯上用斜体显示数学 (the tradition dates to Ancient Greece)。但是对于非正式的演示,我不太喜欢它的外观。我正在尝试使用我自己的字体进行数学显示,或者至少摆脱斜体。在 YAML 中使用 mathfont: my-math-font
和 latex_engine: xelatex
更改 pdf_document:
的数学字体很简单,但对于 HTML 输出,它被证明更复杂。
显然,MathJax 用于通过 Pandoc 呈现方程。我尝试通过外部 CSS 文件添加 CSS 规则,或者按照 .math { }
应用于所有 MathJax 表达式......但是我不太了解 CSS 因此证明正确的参数很困难。据我所知,我的额外 CSS 规则只是被忽略了,因为当我在 R Studio 中编织时斜体仍然存在。
我希望有人有解决办法?这是我正在使用的代码的一个最小示例;要重现它,只需复制粘贴到 .Rmd 文件中,然后使用 ctrl + shift + k
:
---
title: "How to change math font for HTML output?"
output:
html_document
---
```{css}
.math {
font-family: Sans-Serif;
font-style: normal;
}
```
This math equation is still rendered with italics: $\rho~=~\frac{m_{water}}{m_{oven-dry~soil}}$
方法如下:
---
title: "Change MathJax font"
author: "Stéphane Laurent"
date: "05/11/2020"
output: html_document
---
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
"HTML-CSS" : {
availableFonts : ["STIX"],
preferredFont : "STIX",
webFont : "STIX-Web",
imageFont : null
}
});
</script>
$$
\int_0^1 f(x) dx = 0
$$
编辑
现在不行了。要使用不同的字体,您必须下载它们并使用 MathJax 的本地副本。我尝试了所有可用的字体,但所有字体的渲染效果都不佳。
我认为更好的解决方案是使用标准字体并使用 \mathrm
:
$$
\mathrm{\int_0^1 f(x) dx = 0}
$$