如何为具体数学选择黑板粗体字体?

如何为具体数学选择黑板粗体字体?

我在我的文档中使用该concmath包,但是没有\mathbb{}与该字体包的命令链接的黑板粗体字体。我已经在其他地方问过这个问题,并得到了以下解决方案:

\makeatletter
\def\afterfi#1#2\fi{\fi#1}
\def\map#1#2{\mapA{}#1#2\@nnil}
\def\mapA#1#2#3{\ifx\@nnil#3\empty \afterfi{#1}\else \afterfi {\mapA{#1#2{#3}}#2}\fi}

\protected\def\mathbb#1{\leavevmode\textup{\map\mathbbA{#1}}}
\def\mathbbA#1{\setbox\z@\hbox{#1}\copy\z@\kern-\wd\z@ \kern.13em\box\z@}
\makeatother

$u=\{u(t)\}_{t\in\mathbb R^2} \quad \mathbb{NZQIRCOSABC}$

这会稍微移动字母以产生黑板字体,但对于某些字母来说这看起来很糟糕。

有没有办法为混凝土生成外观不错的黑板粗体字体?

提前感谢您的任何建议。

答案1

另一种方法是使用ccfonts软件包,目前仍在更新中。该concmath软件包来自上个世纪。

\usepackage[T1]{fontenc}
\usepackage{amssymb}
\usepackage{ccfonts}

加载所有标准数学字母的 AMS 或 Concrete 版本。

否则,你可以从中挑选你喜欢的黑板字体mathalphaccfonts并在或之后加载concmath

请注意,除非您花钱购买 Type 1 格式的 Micropress Concrete Math 字体,否则这两种方法都会为您提供像素化的 METAFONT 数学字体。不过,您不需要这样做:要么您在授权该字体的期刊上发表文章,要么您可以自由使用支持 OpenType 的现代 TeX 引擎。

在 LuaLaTeX 或 XeLaTeX 中,您可以尝试将 Concrete 与 slab serif 字体 GFS Neohellenic 中的数学符号配对:

\documentclass{article}
\usepackage[math-style=upright]{unicode-math}
\usepackage[paperwidth=10cm]{geometry} % Format a MWE for TeX.SX

\setmainfont{CMU Concrete}[
  Ligatures=Common,
  UprightFont=cmunorm.otf,
  BoldFont=cmunobx.otf,
  ItalicFont=cmunoti.otf,
  BoldItalicFont=cmunobi.otf ]

\setmathfont{GFS Neohellenic Math}[Scale=MatchLowercase]
\setmathfont{cmunoti.otf}[range=it]
\setmathfont{cmunorm.otf}[range=up]

\begin{document}
\noindent%
Let \( (x,y) \in \mathbb{R} \times \mathbb{R} \)
such that \( \sqrt{x^2 + y^2} \leq \varepsilon \).
\end{document}

CMU Concrete + GFS 新希腊数学样本

unicode-math或者不加载math-style=upright,以获得更像旧版软件包的斜体数学符号。将选项更改为math-style=ISO也会使直立的希腊字母倾斜。

\documentclass{article}
\usepackage[math-style=ISO]{unicode-math}
\usepackage[paperwidth=10cm]{geometry} % Format a MWE for TeX.SX

\setmainfont{CMU Concrete}[
  Ligatures=Common,
  UprightFont=cmunorm.otf,
  BoldFont=cmunobx.otf,
  ItalicFont=cmunoti.otf,
  BoldItalicFont=cmunobi.otf ]

\setmathfont{GFS Neohellenic Math}[Scale=MatchLowercase]
\setmathfont{cmunoti.otf}[range=it]
\setmathfont{cmunorm.otf}[range=up]

\begin{document}
\noindent%
Let \( (x,y) \in \mathbb{R} \times \mathbb{R} \)
such that \( \sqrt{x^2 + y^2} \leq \varepsilon \).
\end{document}

CMU Concrete + GFS 新希腊数学样本

无论哪种情况,您都可以使用以下命令切换不同的黑板粗体字母:

\setmathfont{STIX Two Math}[range=bb,
                            Scale=MatchUppercase]

答案2

来自文档:

“amsfonts”和“amssymb”选项:这些选项提供标准“amsfonts”和“amssymb”包的功能,但使用 AMS 符号字体和数学字母的具体版本。

\documentclass{article}
\usepackage[amssymb]{concmath}
\begin{document}
$\mathbb{ABCDEFGHIJKLMNOPQRSTUVWXYZ}$
\end{document}

在此处输入图片描述

答案3

concmath-otf该软件包最近进行了升级,包括直立的黑板大写字母,有正常和粗体的版本。 具体数学 OTF 黑板双击大写字母,正常粗细和粗体粗细

\documentclass{article}

\usepackage{concmath-otf}

\begin{document}
    \[\mathbb{ABCDEFGHIJKLMNOPQRSTUVWXYZ}\]
    \mathversion{bold}\[\mathbb{ABCDEFGHIJKLMNOPQRSTUVWXYZ}\]\mathversion{normal}
\end{document}

但由于Concrete-Math.otfConcrete-Math-Bold.otf是 OTF 字体,因此需要使用 XeLaTeX 或 LuaLaTeX。

相关内容