LuaLaTeX 可以识别字体,但 fc-list 却无法识别

LuaLaTeX 可以识别字体,但 fc-list 却无法识别

我有一个全新的 Arch Linux 机器,安装了全新且完整的 TeX Live。安装似乎包含cm-unicode字体,并且lualatex似乎能正确找到它们,但运行时fc-list输出仅包含几个系统字体。我如何获取可用字体的列表?有什么方法可以修复吗?fc-list还是我应该使用其他实用程序?

答案1

据我所知,LuaLaTeX 不使用fc-list,而是使用 luaotfload.lua 缓存字体。

为了让系统识别 TeX Live 中的所有 otf 字体,请运行

cp $(kpsewhich -var-value TEXMFSYSVAR)/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf
fc-cache -fsv

以超级用户身份。这对于 XeTeX 和 XeLaTeX 来说实际上是必要的。

答案2

.fonts.conf如果您没有 root 权限,您可以在主目录中创建本地配置文件:

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
 <dir>/usr/local/texlive/2011/texmf-dist/fonts/opentype</dir>
 <dir>/usr/local/texlive/2011/texmf-dist/fonts/truetype</dir>
 <dir>/usr/local/texlive/2011/texmf-dist/fonts/type1</dir>
 <match target="font">
  <edit mode="assign" name="rgba">
   <const>none</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hinting">
   <bool>true</bool>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="hintstyle">
   <const>hintmedium</const>
  </edit>
 </match>
 <match target="font">
  <edit mode="assign" name="antialias">
   <bool>true</bool>
  </edit>
 </match>
</fontconfig>

相关内容