如何编写 \usepackage[cm]{sfmath} 提供的粗体和斜体?
\documentclass[12pt,a4paper,hidelinks]{report}
\usepackage{booktabs}
\usepackage[cm]{sfmath}
\newcommand{\pinom}{\hbox{$\mathcal{\pi}$}}
\usepackage{physics}
\usepackage{bm}
\begin{document}
\begin{align*}
& \pinom = P (\vb*{\Theta}_\mathrm{M} | M \vb*{D}) \\
\end{align*}
\end{document}
期望的结果是得到斜体形式的 D 和 theta。
答案1
包中的注释详细说明了每个选项可用的字体,cm
因为
% \sfdefault is cmss
% no slanted bold letters
% no slanted bold capital Greeks
由于没有声明粗体字体,因此\bm
无法访问它们。
如果你使用px
包文件
% \sfdefault is pxss (pxfonts.sty)
% slanted bold letters
% slanted bold capital Greeks
\documentclass[12pt,a4paper,hidelinks]{report}
\usepackage{booktabs}
\usepackage[px]{sfmath}
% no!! \newcommand{\pinom}{\hbox{$\mathcal{\pi}$}}
% \usepackage{physics}
\usepackage{amsmath}
\usepackage{bm}
\begin{document}
\begin{align*}
% & \pinom = P (\vb*{\Theta}_\mathrm{M} | M \vb*{D}) \\
& \pi =P(\bm{\mathsl{\Theta}}_{\mathrm{M}}\mid M\bm{D})
\end{align*}
\end{document}
答案2
该sansmathfonts
包中有基于 Computer Modern Sans Serif 的粗体斜体数学字体:
\documentclass[12pt,a4paper,hidelinks]{report}
\usepackage{booktabs}
\usepackage{sansmathfonts}
\newcommand{\pinom}{\hbox{$\mathcal{\pi}$}}
\usepackage{physics}
\usepackage{bm}
\newcommand\mathbfit[1]{\bm{\mathit{#1}}}
\begin{document}
\begin{align*}
& \pinom = P (\mathbfit{\Theta}_\mathrm{M} | M \mathbfit{D}) \\
\end{align*}
\end{document}
您使用的命令\vb*
是特定于软件包的,可获取位图字体。我定义了一个\mathbfit
命令。这与isomath
或unicode-math
(您可以使用这两个软件包获取粗体斜体数学希腊文)的语法相同,因此更改字体或将其复制粘贴到新文档中应该很容易。