我使用 FONT A 来显示普通字体,但是当我需要以粗体打印某些内容时,我会使用 FONT B。
问题是 FONT A 和 FONT B 的缩放比例不一样。因此,我想要做的是更改Scale=
其中一个的参数,以获得更美观的输出。
但是我不知道在使用两种不同的字体时如何使用此参数。
注意:文档语言为希伯来语,采用多语种处理。
的用法Scale
如下:
\newfontfamily\hebrewfont{Times New Roman}[Script=Hebrew,Scale=1.5]
我到目前为止所做的是
\newfontfamily\hebrewfont{Times New Roman}[
Script=Hebrew,
BoldFont=Arial-Bold]
我猜答案是利用命令
\newfontface⟨cmd⟩{⟨font⟩}[⟨font features⟩]
在 fontspec 手册的第 4 节中有描述。但我不知道我需要传递给 的“希伯来语衬线字体粗体”的多语命令是什么\newfontface
,以及需要以类似的方式传递给附加 的“希伯来语衬线字体正常”的多语命令是什么\newfontface
。
\documentclass{book}
\usepackage{fontspec}
\newfontfamily\englishfont{Times New Roman}[
Script=Latin,Language=English,
BoldFont=Arial-Bold]
% Hebrew font selection:
\newfontfamily\hebrewfont{Times New Roman}[
Script=Hebrew,
BoldFont=Arial-Bold]
\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\begin{document}
אבג \textbf{דהו} זחט
\textenglish{abcd \textbf{efg}.}
\end{document}
答案1
我认为您想要的是设置BoldFeatures
允许您仅将特定选项应用于字体的粗体:
\documentclass{book}
\usepackage{fontspec}
\newfontfamily\englishfont{Times New Roman}[
Script=Latin,Language=English,
BoldFont=Arial-Bold,
BoldFeatures={Scale=1.5}]
% Hebrew font selection:
\newfontfamily\hebrewfont{Times New Roman}[
Script=Hebrew,
BoldFont=Arial-Bold,
BoldFeatures={Scale=1.5}]
\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\begin{document}
אבג \textbf{דהו} זחט
\textenglish{abcd \textbf{efg}.}
\end{document}
类似地,您可以设置UprightFeatures
、ItalicFeatures
和BoldItalicFeatures
。
对于Scale
选项,值MatchLowercase
和MatchUppercase
可以帮助缩放不同的字体,以便小写或大写字母的高度匹配。
我认为您实际上不需要创建一个\newfontface
,但您可以按如下方式使用它:
\documentclass{book}
\usepackage{fontspec}
\newfontfamily\hebrewfont{Times New Roman}[
Script=Hebrew]
\newfontface\hebrewtextbf{Arial-Bold}[%
Script=Hebrew,
BoldFeatures={Scale=MatchUppercase}]
\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\begin{document}
אבג {\hebrewtextbf דהו} זחט
\end{document}