让 R 打印的文本具有颜色,尤其是。在 R 降价针织品中?
Getting R printed texts to have color esp. in R markdown knits?
非常简单的问题:我喜欢写 R notebooks/markdowns,并且使用 highlight: tango
之类的东西,当我将笔记本编织成 pdf 时,我可以为代码添加背景颜色。
但是,我不知道如何在 R 中为打印输出提供彩色背景或彩色字体。例如,假设我有以下块。
```{r, echo = FALSE}
writeLines("Help")
```
我希望突出显示“帮助”一词,例如灰色背景的红色字体。我怎样才能做到这一点?
非常感谢。
对于 PDF 输出,下面是一些 latex
用于获取彩色文本和阴影的命令。 (有关其他着色选项,请参阅 Tex Stack Exchange 站点上的 this answer。)但是,我不确定如何从 writeLines
获得着色的输出。在 \shaded
环境中包含代码块会导致错误。希望有人会提出适用于代码块输出的解决方案。
---
output: pdf_document
header-includes:
- \usepackage{xcolor}
- \usepackage{framed}
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```
\colorlet{shadecolor}{gray!10}
\color{red}
```{r}
writeLines("help")
```
\begin{shaded}
Red text with a gray background.
\end{shaded}
Red text.
\color{black}
Black text.
\colorlet{shadecolor}{red!10}
\begin{shaded}
Black text with a red background.
\end{shaded}
\colorlet{shadecolor}{red!90}
\begin{shaded}
Black text with a darker red background.
\end{shaded}
这是生成的 PDF 文档:
对于 R 中的一种方式,我的 huxtable
包允许您设置表格的背景和文本颜色。我不知道有任何针对纯文本的内部 R 包(也许 crayon
?)
library(huxtable)
ht <- hux(c("Red", "Blue"), c("White bg", "Black bg"))
text_color(ht)[, 1] <- c("red", "blue")
background_color(ht)[, 2] <- c("white", "black")
to_latex(ht) # or just print within a rmarkdown document
与 kableExtra
,您可以使用 text_spec
在 R 中格式化文本
---
output: pdf_document
---
```{r}
library(kableExtra)
options(knitr.table.format = "latex")
```
`r text_spec("Help", color = "red")`
`r text_spec("Help Help", background = "#D05A6E", color = "white", bold = T)`
`r text_spec("Hello", font_size = 20)`
`r text_spec("World", angle = 180)`
你得到
HTML也是如此
在包 vignette.
的 Cell/Text 规范 中查看更多信息
非常简单的问题:我喜欢写 R notebooks/markdowns,并且使用 highlight: tango
之类的东西,当我将笔记本编织成 pdf 时,我可以为代码添加背景颜色。
但是,我不知道如何在 R 中为打印输出提供彩色背景或彩色字体。例如,假设我有以下块。
```{r, echo = FALSE}
writeLines("Help")
```
我希望突出显示“帮助”一词,例如灰色背景的红色字体。我怎样才能做到这一点?
非常感谢。
对于 PDF 输出,下面是一些 latex
用于获取彩色文本和阴影的命令。 (有关其他着色选项,请参阅 Tex Stack Exchange 站点上的 this answer。)但是,我不确定如何从 writeLines
获得着色的输出。在 \shaded
环境中包含代码块会导致错误。希望有人会提出适用于代码块输出的解决方案。
---
output: pdf_document
header-includes:
- \usepackage{xcolor}
- \usepackage{framed}
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
```
\colorlet{shadecolor}{gray!10}
\color{red}
```{r}
writeLines("help")
```
\begin{shaded}
Red text with a gray background.
\end{shaded}
Red text.
\color{black}
Black text.
\colorlet{shadecolor}{red!10}
\begin{shaded}
Black text with a red background.
\end{shaded}
\colorlet{shadecolor}{red!90}
\begin{shaded}
Black text with a darker red background.
\end{shaded}
这是生成的 PDF 文档:
对于 R 中的一种方式,我的 huxtable
包允许您设置表格的背景和文本颜色。我不知道有任何针对纯文本的内部 R 包(也许 crayon
?)
library(huxtable)
ht <- hux(c("Red", "Blue"), c("White bg", "Black bg"))
text_color(ht)[, 1] <- c("red", "blue")
background_color(ht)[, 2] <- c("white", "black")
to_latex(ht) # or just print within a rmarkdown document
与 kableExtra
,您可以使用 text_spec
---
output: pdf_document
---
```{r}
library(kableExtra)
options(knitr.table.format = "latex")
```
`r text_spec("Help", color = "red")`
`r text_spec("Help Help", background = "#D05A6E", color = "white", bold = T)`
`r text_spec("Hello", font_size = 20)`
`r text_spec("World", angle = 180)`
你得到
HTML也是如此
在包 vignette.
的 Cell/Text 规范 中查看更多信息