在不改变全局字体大小的情况下更改 rmarkdown 中单行的字体大小
Changing fontsize of a single line in rmarkdown without altering global fontsize
如何在不增加整个文档字体大小的情况下使用 knitr 和 pandoc 在 rmarkdown 中的一行中增加公式的字体大小?
我正在使用 knitr 和 pandoc 编织成 PDF。
编辑:
这是一个 rmarkdown 文档示例。我希望仅使用数学方程式增加单行的字体大小,同时将其两侧的两个段落保留为全局文档字体设置:
---
title: "Untitled"
output: pdf_document
---
The thing we all love about Stack Overflow is how helpful its users are. As long as you take the time to provide a worked example they will help you solve your problem.
*$Y_{ij}$* = [*$\beta_0$* + *$\beta_1$*(Dose-300)] + [*$\varepsilon_{ij}$*]
One day I hope to be able to provide answers to new users the way some helpful users did for me, a pay it forward if you will.
TL;DR
---
output: pdf_document
---
With a minimal example of the problem, many questions can be answered easily.
\begingroup\Large
\begin{equation*}
Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]
\end{equation*}
\endgroup
And usually, this is fun. ;-)
更长的答案
据我所知,无论如何,唯一合理的输出格式是 LaTeX。因此,让我们从改进方程式的 TEX 代码开始:
*$Y_{ij}$* = [*$\beta_0$* + *$\beta_1$*(Dose-300)] + [*$\varepsilon_{ij}$*]
变成
$Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]$
不需要星号;无论如何,数学都是用斜体排版的。无需为每个表达式使用单独的 $...$
。将 Dose
包裹在 \text
中以使用直立字体。
下一步:增加尺寸。基本上,这是使用 \Large
完成的,但我们需要告诉 LaTeX 只放大方程。通常,这可以使用像这样的花括号来完成:{\Large ... }
。但是,pandoc
转义了 {
,因此我们需要一个替代方案(有关相关问题和一些解释,请参阅 ):
\begingroup\Large $Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]$\endgroup
或简单地(但不太优雅,因为取决于原始字体大小):
\Large $Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]$
\normalsize
我们基本上完成了,但我建议使用 display mode:
\begingroup\Large
\begin{equation*}
Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]
\end{equation*}
\endgroup
如上所述,也可以使用 \normalsize
代替分组。
如何在不增加整个文档字体大小的情况下使用 knitr 和 pandoc 在 rmarkdown 中的一行中增加公式的字体大小?
我正在使用 knitr 和 pandoc 编织成 PDF。
编辑:
这是一个 rmarkdown 文档示例。我希望仅使用数学方程式增加单行的字体大小,同时将其两侧的两个段落保留为全局文档字体设置:
---
title: "Untitled"
output: pdf_document
---
The thing we all love about Stack Overflow is how helpful its users are. As long as you take the time to provide a worked example they will help you solve your problem.
*$Y_{ij}$* = [*$\beta_0$* + *$\beta_1$*(Dose-300)] + [*$\varepsilon_{ij}$*]
One day I hope to be able to provide answers to new users the way some helpful users did for me, a pay it forward if you will.
TL;DR
---
output: pdf_document
---
With a minimal example of the problem, many questions can be answered easily.
\begingroup\Large
\begin{equation*}
Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]
\end{equation*}
\endgroup
And usually, this is fun. ;-)
更长的答案
据我所知,无论如何,唯一合理的输出格式是 LaTeX。因此,让我们从改进方程式的 TEX 代码开始:
*$Y_{ij}$* = [*$\beta_0$* + *$\beta_1$*(Dose-300)] + [*$\varepsilon_{ij}$*]
变成
$Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]$
不需要星号;无论如何,数学都是用斜体排版的。无需为每个表达式使用单独的 $...$
。将 Dose
包裹在 \text
中以使用直立字体。
下一步:增加尺寸。基本上,这是使用 \Large
完成的,但我们需要告诉 LaTeX 只放大方程。通常,这可以使用像这样的花括号来完成:{\Large ... }
。但是,pandoc
转义了 {
,因此我们需要一个替代方案(有关相关问题和一些解释,请参阅
\begingroup\Large $Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]$\endgroup
或简单地(但不太优雅,因为取决于原始字体大小):
\Large $Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]$
\normalsize
我们基本上完成了,但我建议使用 display mode:
\begingroup\Large
\begin{equation*}
Y_{ij} = [\beta_0 + \beta_1 (\text{Dose}-300)] + [\varepsilon_{ij}]
\end{equation*}
\endgroup
如上所述,也可以使用 \normalsize
代替分组。