我想知道是否有一个简单的方法可以倾斜且非斜体在数学模式下使用小写字母(尤其是粗体和/或黑板粗体样式),同时仍使用一些基本/默认设置。
这是出于实际需要:我希望对 n 元组(例如 ℝ n的对象)进行特殊的图形渲染,以便从视觉上将它们与普通向量区分开来,我使用斜体粗体表示普通向量。据我所知,变量数量应该以倾斜的样式书写,因此才有“倾斜”部分(顺便说一句,这就是问题所在!即使对我来说,写非倾斜(罗马)粗体小写字母也完全没有问题)。我还注意到大写字母\boldsymbol
(以及\bm
来自bm
包的,以及\vb*
来自physics
包的)已经是非斜体的了,但这对我来说可能是一个太大的限制,我宁愿避免诉诸于将每个 n 元组大写,因此有“小写”部分。
由于我对 Latex 还不太熟悉,所以我使用了一些非常基本的设置,并希望坚持使用它们,尤其是使用 Computer Modern 作为数学字体,并且添加在方程式中书写倾斜非斜体(粗体/bb)字体的能力。
作为一个极值比率,我会诉诸\text
,但我想最好不要这样做(例如间距,重音等)。
我已经彻底寻找答案;这个几乎满足了我的所有需求,唯一的问题是倾斜的字体看起来cmbxsl10
比普通字体小得多。
答案1
如果你想要倾斜的粗体版本
\documentclass{article}
\usepackage{amsmath}
\DeclareSymbolFont{slant}{OT1}{\familydefault}{m}{sl}
\SetSymbolFont{slant}{bold}{OT1}{\familydefault}{bx}{sl}
\DeclareSymbolFontAlphabet{\mathsl}{slant}
\begin{document}
\[
fgh\mathsl{fgh}_{fgh\mathsl{fgh}}
\]
\[
\boldsymbol{f}\boldsymbol{\mathsl{f}}
\]
\end{document}
如果你想要粗体版,不倾斜
\documentclass{article}
\usepackage{amsmath}
\DeclareSymbolFont{slant}{OT1}{\familydefault}{m}{sl}
\SetSymbolFont{slant}{bold}{OT1}{\familydefault}{b}{sl}
\DeclareSymbolFontAlphabet{\mathsl}{slant}
\begin{document}
\[
fgh\mathsl{fgh}_{fgh\mathsl{fgh}}
\]
\[
\boldsymbol{f}\boldsymbol{\mathsl{f}}
\]
\end{document}
答案2
史蒂文的答案的另一种选择:
% My standard header for TeX.SX answers:
\documentclass[a4paper]{article} % To avoid confusion, let us explicitly
% declare the paper format.
\usepackage[T1]{fontenc} % Not always necessary, but recommended.
% End of standard header. What follows pertains to the problem at hand.
\usepackage{amsmath,amsfonts} % compatibility test
\DeclareMathAlphabet{\mathsl} {T1}{cmr}{m} {sl}
\SetMathAlphabet{\mathsl}{bold}{T1}{cmr}{bx}{sl}
\begin{document}
Normal: \( \mathsl{ad}-\mathsl{bc} \).
{\bfseries\boldmath Boldfaced: \( \mathsl{ad}-\mathsl{bc} \).}
\end{document}