我需要使用我要提交的期刊提供的类文件来编译我的文档。
他们需要 Arial 字体,事实上,在他们提供的 .cls 文件中,我可以找到这一行
\RequirePackage{arial}
我已经安装了字体(我想,请参阅下面的详细信息),但是我收到了错误消息:
File 'arial.sty' not found. \RequirePackage
我在 Linux Mint 中,我正在使用 TeX Live 2019/Debian 和 TeXstudio GUI。
迄今已完成的步骤:
我已经发出命令
kpsewhich --var-值 TEXMFLOCAL
找到字体目录。在这个目录中,我发现,
[TEXMFLOCAL]/tex/latex/ua1/uarial.sty
据我所知,这是 arial 字体的免费版本。
我也运行了命令
sudo -H mktexlsr
更新字体数据库,但错误仍然存在。
我尝试编辑类文件并更改
\RequirePackage{arial}
进入
\RequirePackage{uarial}
但后来我收到错误:
File 'uarial.sty' not found. \RequirePackage
- 我曾尝试使用 XeLaTeX 或 LuaLaTeX(通过 TeXstudio 的“工具 -> 命令”菜单),我知道它会尝试使用我的系统字体(我检查过,我在 Linux 中安装了该字体),但我收到了完全相同的错误。
答案1
该\RequirePackage
位搜索包裹名为 arial 的软件包,据说可以设置要使用的 Arial 字体。TeXLive 默认不安装此软件包,但经过一番挖掘后,我在这个软件包中找到了它:https://ctan.org/pkg/pclnfss。
这个 arial 包的作用很简单\renewcommand{\sfdefault}{mhv}
。mhv 是不是Arial;如果我理解正确的话,它是一种虚拟字体,可以提供指标用于 PCL 打印机中嵌入的 Helvetica 字体。我不认为这在直接生成 pdf 文件时会正常工作,只能通过 dvi 才能正常工作(我在这里尝试过,LaTeX 用 Computer Modern 代替了它)。在 2004 年(创建此包时)的某些情况下,这可能有意义,但现在似乎总体上是个坏主意 :)。
那么,你应该怎么做呢?由于该类的原作者并没有真正期望 Arial,我只需将其替换\RequirePackage{arial}
为\RequirePackage{tgheros}
,这将加载 TeX Gyre Heros(Helvetica 的克隆版本)。
现在,请注意,arial 和 tgheros 包实际上都不会将文档的主字体更改为各自的字体;它们只会更改 sans 字体。您使用的类可能会更改默认字体(带\renewcommand*\familydefault{\sfdefault}
),也可能不会。
如果你真的想要 Arial,你应该在系统中安装该字体(它是合法的,可以下载 - 在 mint 中,你可能只需要apt install ttf-mscorefonts-installer
)然后
\usepackage{fontspec}
\setmainfont{Arial}
为此,您必须使用 LuaLaTeX 或 XeLaTeX 进行编译。