编辑1:

编辑1:

我在尝试将 Arial 字体与 ShareLatex 中的一些非 arial 字体结合用于小写字母时遇到了一些问题。

我已设法使一些设置正常工作,但不是我最需要的:1. 有一个可用的真正的小型大写字体 2. 使用 Arial 作为主字体。

根据此帮助页面,我需要在我的项目中添加 Arial 的 TTF 文件并输入以下代码:

\setsansfont[
BoldFont=arialbd.ttf,
ItalicFont=ariali.ttf,
BoldItalicFont=arialbi.ttf
]{arial.ttf}

因为我想将它用作我的主要字体,所以我将其复制到 TTF 并对其进行了简单的编辑,如下所示。但是我不懂任何小写字母,因为 Arial 没有

\setmainfont[
BoldFont=arialbd.ttf,
ItalicFont=ariali.ttf,
BoldItalicFont=arialbi.ttf,
]{arial.ttf}

使用这里的一些示例,我尝试使用另一种“无衬线”字体,并兼容 sharelatex 上的 Small caps 字体。此代码有效,它是无衬线字体,有小写字母,但不是 Arial(我的要求是需要 Arial,不知道为什么,但我需要遵守)。因此,此命令可以创建 Latin Modern Sans 和“TeX Gyre Termes”作为小写字母的混合体。

\setmainfont[SmallCapsFont=TeX Gyre Termes,SmallCapsFeatures={Letters=SmallCaps}]{Latin Modern Sans}

现在我想尝试合并这两个,这将给我:

\setmainfont[
BoldFont=arialbd.ttf,
ItalicFont=ariali.ttf,
BoldItalicFont=arialbi.ttf,
SmallCapsFont={TeX Gyre Termes},
SmallCapsFeatures={Letters=SmallCaps},
]{arial.ttf}

我也尝试了连字符选项,如下这篇文章

\setmainfont[
BoldFont=arialbd.ttf,
ItalicFont=ariali.ttf,
BoldItalicFont=arialbi.ttf,
SmallCapsFont={TeX Gyre Termes},
SmallCapsFeatures={Letters=SmallCaps},
Ligatures=TeX,
]{arial.ttf}

但我的所有尝试都白费了,因为我得到了一个编译错误。这很奇怪,因为 tex gyre 工作正常,但我猜是我将带有文件名的命令与带有字体名称的命令混在一起了。

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! fontspec error: "font-not-found"
! 
! The font "TeX Gyre Termes" cannot be found.
! 
! See the fontspec documentation for further information.
! 
! For immediate help type H <return>.
!...............................................  

l.64 ]{arial.ttf}

简而言之,我真的迷路了。你知道我为什么会收到这个错误以及我应该如何修复我的最后一个命令吗?

编辑1:

根据 Ulrike 的建议,我尝试了这个,它在 Sharelatex 上编译得很好,但它没有添加小写字母,而是添加了常规字体。是否有 -smallcaps 或我缺少一些参数?

\setmainfont[
BoldFont=arialbd.ttf,
ItalicFont=ariali.ttf,
BoldItalicFont=arialbi.ttf,
SmallCapsFont=texgyretermes-regular.otf,
SmallCapsFeatures={Letters=SmallCaps},
Ligatures=TeX,
]{arial.ttf}

答案1

当您开始声明带有扩展名的字体时,您应该继续使用它。fontspec不喜欢混合搜索方法。这意味着您应该TeX Gyre Termes选择texgyretermes-regular.otf

但除此之外,我不明白为什么您要为小写字母切换不同的字体。我刚刚在 sharelatex 上尝试上传了四个字体文件,效果非常好:

\documentclass[11pt]{article}
\usepackage{fontspec}

\setmainfont[
BoldFont=arialbd.ttf,
ItalicFont=ariali.ttf,
BoldItalicFont=arialbi.ttf,
]{arial.ttf}


\begin{document}
blub \textsc{Blub}
\end{document}

在此处输入图片描述

我正在使用最新的 win10 电脑上的 arial 版本。如果您的 arial 字体没有小写字母,请考虑获取较新版本的字体。

相关内容