如果这对我来说显而易见的话,我深感抱歉。
简而言之,我知道默认字体系列称为“Computer Modern”,但我应该将什么值传递给monofont
Pandoc 元数据块中的字段(或如果需要,传递给其他 Latex 命令)?
更详细地说,这是我的情况:我正在使用 Pandoc,我想更改等宽字体仅字体(以在边距内容纳我的代码块中的行)。为此,我知道我必须为字段Scale
下的参数分配一些合适的值monofontoptions
。
monofontoptions:
- Scale=0.9
然而这问题说你必须在字段前输入字体名称(通过monofont
)monofontoptions
。我知道这是正确的,因为我已经尝试过一个我知道
这是inconsolata
我花了很长时间才弄清楚的(在尝试了许多组合之后,例如Inconsolata
,Inconsolata.ttf
等等)。这有效:
monofont: inconsolata # what should be the equivalent for the default monospace font?
monofontoptions:
- Scale=0.9
但正如评论中提到的,我更喜欢原始的单字体,因此想要默认字体系列的“精确”名称。我知道 Latex 使用“Computer Modern”系列,并尝试过、等变体。computer modern
但cm
似乎都不起作用。有什么想法吗?
一般来说,我应该查看我的字体文件来确定名称吗?
答案1
感谢用户 Bernard 指出这是一种 OpenType 字体,我使用了以下内容
monofont: cmuntt
monofontoptions:
- Extension=.otf
- Scale=0.9
并且成功了。至于我如何找出字体的名称,我运行了 来kpsewhich
了解系统中“主要”TeX 目录的位置(安装 TeXLive 时)。它位于/usr/share/texlive
。因此我运行了以下命令:
find /usr/share/texlive/ -name "*.ttf" -o -name "*.otf" 2>/dev/null -printf "%f\n" | grep "cmun"
它生成了 Computer Modern 系列所有字体的列表,其中一种是cmnuntt.otf
我从tt
等宽字体中推断出来的。
我想这也可以用于找出其他字体名称?这就是我发布这篇文章的原因,因为传递字体名称是我一直很头疼的事情。请随时指出我可能遗漏的任何东西,或者这是否是不必要的麻烦!