如何在R Markdown中将选项传递给LaTeX字体?

use*_*730 2 latex r pandoc r-markdown

rmarkdown在{xe | lua} latex之后,允许在YAML标头中为主要文本,无衬线文本,等宽文本(最著名的是代码块!)和数学字体指定字体。至少对于通过xetex渲染PDF而言,这可行。

但是,我发现没有(记录的)方法可以将选项传递给基础setxxxfont\ LaTeX命令。例如,YAML片段:

```
monofont: Inconsolata
```
Run Code Online (Sandbox Code Playgroud)

生成以下\ LaTeX片段:

\setmonofont[Mapping=tex-ansi]{Inconsolata}
Run Code Online (Sandbox Code Playgroud)

我对此有两个问题:

  1. 为什么要Mapping=tex-ansi添加?以及如何控制呢?(我正在使用UTF8 ...)。
  2. 我如何为字体选项设置其他参数,例如\setmonofont[Scale=0.91]{TeX Gyre Cursor}

R Markdown 和Pandoc的《用户指南》没有揭示任何相关内容。

Mic*_*per 5

背景:

当R Markdown将编织代码转换为输出格式(PDF)时,将使用pandoc模板。模板存储在包中,并且所有用YAML变量替换的变量都包含在$$符号中

1.编码

Mapping=tex-ansi 它添加到代码中,以解决GitHub上报告的问题。因此,对于可能的副作用,我将谨慎删除。

如果确实希望更改此代码,则必须制作用于转换文档的LaTeX模板文件的副本。您可以在此处找到默认模板。有关提供自定义模板的更多信息,请参见此处。

2.其他字体选项

您可以使用monofontoptionsYAML参数将其他参数添加到字体选项。

Pandoc文档中提供了可以由LaTeX输出解析的变量的文档