我最近从 Mac OS 迁移到 Ubuntu。我安装了 TexLive,它可以正常工作。但是,fontspec
无论我使用什么字体,都不起作用。这适用于 Ubuntu 原生字体和我自己安装的字体~/.fonts/
。我知道这些字体已安装,因为我可以在 中使用它们LibreOffice
,包括我自己安装的字体。但是,如果我加载fontspec
,我总是会收到错误:
*************************************************
* LaTeX warning: "xparse/redefine-command"
*
* Redefining document command \oldstylenums with arg. spec. 'm' on line 128.
*************************************************
) (/usr/share/texlive/texmf-dist/tex/latex/fontspec/fontspec-xetex.sty
(/usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
(/usr/share/texlive/texmf-dist/tex/latex/euenc/eu1enc.def)
(/usr/share/texlive/texmf-dist/tex/latex/euenc/eu1lmr.fd)kpathsea:make_tex: Invalid fontname `[lmroman10-regular]', contains '['
! Font EU1/lmr/m/n/10=[lmroman10-regular]:mapping=tex-text at 10.0pt not loadab
le: Metric (TFM) file or installed font not found.
<to be read again>
relax
l.100 \fontencoding\encodingdefault\selectfont
AM(非)WE 是:
\documentclass[utf8,12pt,letterpaper]{article}
\usepackage{fontspec}
\setmainfont[Ligatures={Common,TeX},Contextuals=NoAlternate]{DejaVuSerif.ttf}
\begin{document}
test
\end{document}
我进行编译xelatex
(这是必要的,因为我想使用 CJK)。
我已经在 Google 上搜索了好几次,重新安装了TexLive
好几次,重启了系统等等。我没主意了。非常感谢大家的帮助!
答案1
您的 TeX Live 安装有缺陷或不完整。它缺少 OpenType 格式的 Latin Modern 字体,而这些字体是fontspec
运行所必需的,因为它们是“后备字体”。
如果你有“vanilla” TeX Live,请使用tlmgr
安装/重新安装
collection-fontsrecommended
(或者只是lm
软件包)。对于 TeX Live/Debian,使用apt-get
安装所有“推荐”软件包。
无论如何,最好是完整安装,而不是在出现问题时进行调整。在 TeX Live/Debian 中,总是很难理解哪个 Debian 包包含我们需要的东西。
答案2
答案3
使用以下链接在 Ubuntu 中安装 Microsoft 字体对我有帮助 https://linux.how2shout.com/how-to-install-microsoft-fonts-on-ubuntu-22-04-20-04-lts/