在 ConTeXt MKiV/LuaTeX 中使用 .otf/.ttf

在 ConTeXt MKiV/LuaTeX 中使用 .otf/.ttf

我想为我在 ConTeXt MKiV 中排版的文档使用 .otf 字体。遗憾的是我无法更改字体。我设置export OSFONTDIR="/usr/local/share/fonts;$HOME/.fonts并运行mtxrun --script fonts --reload

对于我已安装的字体来说,查询数据库工作正常。

打字稿停顿的地方。我使用(在与文档其余部分相同的文件的开头)

\starttypescript [sans] [delicious] 
  \definefontsynonym [sans]           [name:delicious]
\stoptypescript


\setupbodyfont[sans,rm,10pt]

而我只得到了 Computer Modern 字体。

抱歉,这个问题比较菜鸟,但我确实尝试了几次不同的字体,并阅读了维基百科以及。但有些例子我无法运行,有些例子已经过时了(例如TypeScript)什么能对我有帮助?

答案1

正如我在评论中提到的,您可以使用 simplefonts 模块,这是在 ConTeXt 中让字体工作的简单方法。它就这么简单:

\usemodule   [simplefonts]
\setmainfont [Delicious]

或者你也可以使用 TypeScript,这是一种更灵活的方式。这是一个非常简单的 TypeScript:

\starttypescriptcollection [delicious]
  \starttypescript [sans] [delicious] [name]
    \setups[font:fallback:sans]
    \definefontsynonym [Sans]           [name:deliciousroman] [features=default]
    \definefontsynonym [SansBold]       [Sans]                [features=default]
    \definefontsynonym [SansItalic]     [Sans]                [features=default]
    \definefontsynonym [SansBoldItalic] [Sans]                [features=default]
  \stoptypescript

  \starttypescript [delicious]
    \definetypeface [\typescriptone] [rm] [serif] [modern]    [default]
    \definetypeface [\typescriptone] [ss] [sans]  [delicious] [default]
    \definetypeface [\typescriptone] [tt] [mono]  [modern]    [default]
    \definetypeface [\typescriptone] [mm] [math]  [modern]    [default]
  \stoptypescript
\stoptypescriptcollection

现在你可以像这样使用字体:

\setupbodyfont [delicious, sans]
\starttext  
  \input ward
\stoptext

有关更高级的 TypeScript,请查看我对“在 ConTeXt 中使用 TypeScript 激活连字”这个问题的回答. 同样相关的可能是答案如何在文档中的一小部分文本中使用特定字体?

研究 ConTeXt 发行版附带的打字稿也是一个好主意。这些文件被命名为type-imp-<font>.mkiv。根据你的需求调整其中一个并不难,你可以从中开始。

相关内容