在 amsfonts 中使用 Kpfonts 的 mathbb

在 amsfonts 中使用 Kpfonts 的 mathbb

我正在尝试使用amsfonts,或者更准确地说是 的数学字体amsfonts,但我不太喜欢黑板粗体的外观。我也不喜欢dsfonts或其他许多选项的外观。但 实现黑板粗体的方式kpfonts非常符合我的口味 - 我如何“导入”该黑板粗体字体?

最小示例:

\documentclass{article}

\usepackage{amsfonts}

\begin{document}

Lorem ipsum $\mathbb{N,Z,Q,R,C}$ lorem ipsum

\[f_i 1_{[-n,n]}\uparrow f_i,\qquad n\in\mathbb{N}\]

\end{document}

答案1

查找mathbb后,kpfonts.sty我们发现有两种选择,带衬线或不带衬线。你想要衬线字体,所以我们看到

\DeclareSymbolFont{AMSb}{U}{jkp\kp@famillem syb\kp@widerm}{m}{n}% rmmathbb
\SetSymbolFont{AMSb}{bold}{U}{jkp\kp@famillem syb\kp@widerm}{bx}{n}

好的,现在我们需要看看\kp@famillem和是什么\kp@widerm意思。前者很简单:它表示l如果我们想要“浅色”字体,否则它是空的。对于后者,它表示w如果我们想要“宽数学”,否则它是空的。

够了。我们不需要符号字体,只需要字母,所以

\DeclareMathAlphabet{\mathbb}{U}{jkpsyb}{m}{n}
\SetMathAlphabet{\mathbb}{bold}{U}{jkpsyb}{bx}{n}

应该是你需要的。我们试试吧。

\documentclass{article}

\DeclareMathAlphabet{\mathbb}{U}{jkpsyb}{m}{n}
\SetMathAlphabet{\mathbb}{bold}{U}{jkpsyb}{bx}{n}

\begin{document}

$a+\mathbb{A}+\mathbb{Z}$

\boldmath
$a+\mathbb{A}+\mathbb{Z}$

\end{document}

在此处输入图片描述

答案2

如果您愿意并且能够使用 LuaLaTeX 编译文档,您可以利用kpfonts数学字体系列最近以 OpenType 格式提供的事实。这很棒,因为它允许您使用该包的一些高级选项unicode-math仅为 blackboard-bolt 范围激活 kpfont 类型的数学字体。

在此处输入图片描述

\documentclass{article}

\usepackage{unicode-math}
% Latin Modern is a clone of Computer Modern
\setmainfont{Latin Modern Roman}
\setmathfont{Latin Modern Math} 
\setmathfont{KpMath Regular}[range=bb, Scale=MatchUppercase]

\begin{document}
Lorem ipsum $\mathbb{N,Z,Q,R,C}$ lorem ipsum
\[
f_i 1_{[-n,n]}\uparrow f_i,\qquad n\in\mathbb{N}
\]

$\symup{NZQRC}$ vs $\symbb{NZQRC}$

$\mathrm{NZQRC}$ vs $\mathbb{NZQRC}$
\end{document}

相关内容