我正在寻找黑板粗体字母的粗体版本。不幸的是,到目前为止我想出的最佳符号很难与通常的黑板粗体字母区分开来。有没有办法获得更粗的黑板字母?
我迄今为止最好的尝试:
\documentclass{article}
\pagenumbering{gobble} % switch off page numbering
\usepackage{amsmath}
\usepackage[bb=boondox]{mathalfa} % for mathbbb
\begin{document}
\begin{align*}
\mathbbb{B} & \mathbb{B} \\
\mathbbb{C} & \mathbb{C} \\
\mathbbb{N} & \mathbb{N} \\
\mathbbb{P} & \mathbb{P} \\
\mathbbb{Z} & \mathbb{Z}
\end{align*}
\end{document}
答案1
根据对原始问题的评论,我整理了以下选项列表。到目前为止,没有一个选项是完美的:
- “粗体”不是黑板粗体
- “mathbbb” 和 “kern” 都很难与普通的 “mathbb” 区分开来
- “kern” 和 “more kern” 在 “C” 的尖端处有一个渲染伪影
- “轮廓”在缩小很多时看起来很奇怪(但到目前为止它是最好的)
\documentclass{article}
\pagenumbering{gobble} % switch off page numbering
\usepackage[landscape,margin=1in]{geometry}
\usepackage{amsmath}
\usepackage[bb=boondox]{mathalfa} % for mathbbb
\usepackage{stix2}
\usepackage{xcolor}
\usepackage{contour}
\contourlength{0.02em}
\usepackage{amsfonts}
\newcommand{\mathbbkern}[1]{%
\ooalign{$\mathbb{#1}$\cr$\mkern0.5mu\mathbb{#1}$}%
}
\newcommand{\mathbbkernmore}[1]{%
\ooalign{$\mathbb{#1}$\cr$\mkern0.5mu\mathbb{#1}$\cr$\mkern1mu\mathbb{#1}$}%
}
\newcommand{\mathbbbkern}[1]{%
\ooalign{$\mathbbb{#1}$\cr$\mkern0.5mu\mathbbb{#1}$}%
}
\newcommand{\mathbbbkernmore}[1]{%
\ooalign{%
$\mathbbb{#1}$\cr%
$\mkern0.05mu\mathbbb{#1}$\cr%
$\mkern0.10mu\mathbbb{#1}$\cr%
$\mkern0.15mu\mathbbb{#1}$\cr%
$\mkern0.20mu\mathbbb{#1}$\cr%
$\mkern0.25mu\mathbbb{#1}$\cr%
$\mkern0.30mu\mathbbb{#1}$\cr%
$\mkern0.35mu\mathbbb{#1}$\cr%
$\mkern0.40mu\mathbbb{#1}$\cr%
$\mkern0.45mu\mathbbb{#1}$\cr%
$\mkern0.50mu\mathbbb{#1}$\cr%
$\mkern0.55mu\mathbbb{#1}$\cr%
$\mkern0.60mu\mathbbb{#1}$%
}%
}
\newcommand{\ccontour}[1]{%
\colorlet{contour-saved}{.}%
\contour{contour-saved}{#1}%
}
\newcommand{\mathbbcontour}[1]{
\ccontour{\ensuremath{\mathbb{#1}}}
}
\newcommand{\mathbbbcontour}[1]{
\ccontour{\ensuremath{\mathbbb{#1}}}
}
\begin{document}
\begin{align*}
\begin{array}{ccccccccccc}
\text{Normal} & \text{Bold} & \text{mathbb} & \text{mathbbb} & \text{kern} & \text{more kern} & \text{mathbbb + kern} & \text{mathbbb + more kern} & \text{contour} & \text{mathbbb + contour} \\
%
B & \mathbf{B} & \mathbb{B} & \mathbbb{B} & \mathbbkern{B} & \mathbbkernmore{B} & \mathbbbkern{B} & \mathbbbkernmore{B} & \mathbbcontour{B} & \mathbbbcontour{B} \\
%
C & \mathbf{C} & \mathbb{C} & \mathbbb{C} & \mathbbkern{C} & \mathbbkernmore{C} & \mathbbbkern{C} & \mathbbbkernmore{C} & \mathbbcontour{C} & \mathbbbcontour{C} \\
%
N & \mathbf{N} & \mathbb{N} & \mathbbb{N} & \mathbbkern{N} & \mathbbkernmore{N} & \mathbbbkern{N} & \mathbbbkernmore{N} & \mathbbcontour{N} & \mathbbbcontour{N} \\
%
P & \mathbf{P} & \mathbb{P} & \mathbbb{P} & \mathbbkern{P} & \mathbbkernmore{P} & \mathbbbkern{P} & \mathbbbkernmore{P} & \mathbbcontour{P} & \mathbbbcontour{P} \\
%
Z & \mathbf{Z} & \mathbb{Z} & \mathbbb{Z} & \mathbbkern{Z} & \mathbbkernmore{Z} & \mathbbbkern{Z} & \mathbbbkernmore{Z} & \mathbbcontour{Z} & \mathbbbcontour{Z}
\end{array}
\end{align*}
\newpage
\begin{align*}
\arraycolsep=2pt
\begin{array}{cccccccccc}
C & \mathbf{C} & \mathbb{C} & \mathbbb{C} & \mathbbkern{C} & \mathbbkernmore{C} & \mathbbbkern{C} & \mathbbbkernmore{C} & \mathbbcontour{C} & \mathbbbcontour{C}
\end{array}
\end{align*}
\end{document}
以下是 ℂ 的 kern 和 contour 版本的放大版本,以显示渲染效果:
答案2
我不确定您是否要求在同一文档中使用两种不同粗细的黑板粗体字体,或者使用更粗的黑板粗体字体。
选择更粗的黑板粗体
如果您使用的是 PDFTeX ,我会首先检查手册中的字体示例mathalpha
。如果可以使用,则可以使用以下命令unicode-math
选择不同的粗细,例如\mathbb
\setmathfont{KPMath-Regular}
\setmathfont{KPMath-Semibold}[range=bb]
如果你的数学字体没有粗体版本,你可以用类似
\setmathfont{NewCMMath-Book}
\setmathfont{NewCMMath-Book}[range=bb,
FakeBold=0.05]
您可以通过增加 后面的数字来使黑板变得更粗FakeBold=
。
使用两种粗细的 Blackboard Bold
该mathalpha
包支持\mathbbb
bolder-blackboard-bold。它仅适用于某些字体。
许多其他软件包(包括unicode-math
和bm
)允许您编写\boldsymbol{\mathbb{N}}
。这要求您定义bold
数学版本。通常,您的字体包会为您完成此操作。如果您加载的数学字体unicode-math
具有粗细-Regular
和-Bold
,则该包会自动加载后者作为您的粗体数学字体。
您也可以手动进行设置,使用以下命令
\setmathfont{KPMath-Light}
\setmathfont{KPMath-Semibold}[version=bold]
在传统的 8 位 TeX 中,你可以使用以下命令将粗体数学版本设置为黑板粗体:
\SetMathAlphabet{\mathbb}{bold}{xyz}{U}{m}{b}
无论哪种情况,你都可以为了方便定义一个命令
\providecommand\mathbbb[1]{\boldsymbol{\mathbb{#1}}}