寻找比拉丁现代字体或计算机现代字体更粗的黑板粗体(\mathbb)数学字体

寻找比拉丁现代字体或计算机现代字体更粗的黑板粗体(\mathbb)数学字体

我正在尝试寻找满足以下两个条件的黑板粗体数学字体:

  1. 它看起来类似于拉丁现代或计算机现代,但是更厚的
  2. 该字体的主字符和上标之间的间距为小的作为(或更小) 拉丁现代或计算机现代之一。

这背后的原因是我在 XeLaTeX 中使用了需要该unicode-math包的 STIX Two 字体:

% STIX Two font
\usepackage[math-style=ISO]{unicode-math}
\usepackage{xltxtra}
\setmainfont{STIX2Text}[
  Extension       = .otf,
  UprightFont     = *-Regular,
  ItalicFont      = *-Italic,
  BoldFont        = *-Bold,
  BoldItalicFont  = *-BoldItalic ]

\setmathfont{STIX2Math.otf}

而且这个包的黑板粗体符号对我来说太丑了。我可以用 Latin Modern 的符号代替:

\let\mathbb\relax
\DeclareMathAlphabet{\mathbbb}{U}{msb}{m}{n}

但与其他符号相比,这些符号看起来太细了。

另一种方法是使用 TeX Gyre 字体,例如:

\setmathfont[range={\mathbb}]{TeX Gyre Termes Math}

但后来我发现,主角和它的上标之间的空隙很大,也很丑。

以下是比较:

在此处输入图片描述

有人可以建议我一种满足上述两个条件的字体吗?

非常感谢您的帮助!

答案1

如果您喜欢 TeX Gyre Termes Math,并且不希望需要大量不同的上标,那么您可以添加一个字距来移动上标,就像下面的一种排列一样。

   \documentclass{article}
   \usepackage[math-style=TeX, bold-style=TeX]{unicode-math}

   \setmainfont[]{STIX Two Text}
   \setmathfont{STIX Two Math}
   \setmathfont[range=bb]{Tex Gyre Termes Math}

   \usepackage{xparse}
   \DeclareDocumentCommand{\RN}{m O{-0.08}}{\mathbb{R}^{\kern#2em #1}}

   \newcommand*{\Rn}[1]{\mathbb{R}^{\kern-0.08em #1}}

   \begin{document}

   $\Rn{n_i}$

   $\RN{n_i}$

   $\mathbb{R}^{\kern-0.08em n_i}$

   $\RN{n_i}[0.0]$

   \end{document}

在此处输入图片描述

答案2

找到了一个完美的:

\setmathfont[range={\mathbb}]{Cambria Math}

相关内容