使用 fontspec 对两种不同字体进行不同的缩放

使用 fontspec 对两种不同字体进行不同的缩放

我使用 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}

在此处输入图片描述

类似地,您可以设置UprightFeaturesItalicFeaturesBoldItalicFeatures

对于Scale选项,值MatchLowercaseMatchUppercase 可以帮助缩放不同的字体,以便小写或大写字母的高度匹配。


我认为您实际上不需要创建一个\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}

在此处输入图片描述

相关内容