XeTeX 找不到字体

XeTeX 找不到字体

fontspec从 TL2010 开始使用 XeTeX。我在 中安装了 Linux Libertine OTF 字体文件/usr/local/share/fonts,然后运行fc-cache,我可以看到它们被列出:

$ fc-list | grep -i libert
Linux Libertine Slanted O:style=Slanted
Linux Libertine Slanted O:style=Semibold Slanted
Linux Libertine O:style=Bold Italic
Linux Libertine Capitals O:style=Semibold Italic Samll Caps
Linux Libertine O C:style=Regular
Linux Libertine O:style=Regular
Linux Libertine Capitals O:style=Semibold Small Caps
Linux Libertine O:style=Semibold Italic
Linux Libertine Display Capitals O:style=Small Caps
Linux Libertine O:style=Italic
Linux Libertine Initials O:style=Initials
Linux Libertine O:style=Semibold
Linux Libertine Capitals O:style=Bold Small Caps
Linux Libertine Display O:style=Regular
Linux Libertine Capitals O:style=Italic
Linux Libertine Slanted O:style=Bold Slanted
Linux Libertine O:style=Bold
Linux Libertine Capitals O:style=Bold Italic Samll Caps
Linux Libertine Capitals O:style=Small Caps

现在当我尝试使用:

\newfontfamily\headerfont{Linux Libertine Slanted O}

fontspec说找不到字体:

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! 
! fontspec error: "font-not-found"
! 
! The font "Linux Libertine Slanted O" cannot be found.
! 
! See the fontspec documentation for further information.
! For immediate help type H <return>.
!...............................................  

l.13 ...mily\headerfont{Linux Libertine Slanted O}

相同的步骤在另一台使用标准 Ubuntu 软件包中的 TL2009 的机器上也能完美运行。

答案1

您不需要复制系统目录中 TeX Live 中已有的字体;您只需从终端窗口(假设是 bash shell)执行以下步骤即可:

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

整个系统将会知道这些字体,就像它们在系统目录中一样(当然,对于与 fontconfig 库链接的程序而言)。

安装 TeX Live 2011(已发布)后,您应该发出相同的两个命令,然后使用新版本的字体。

答案2

由于某种原因,文件rw-r-----...chmod修复了644这个问题。

相关内容