我正在尝试制作一个倾斜的罗马字体d
,用于数学模式。使用如何使用 libertine 字体的倾斜变体?我已经设法使它大部分工作正常,但我不知道如何解释数学风格的变化(正常/下标等)。
\dd
您可以在下标后面的额外空间中看到该问题
我尝试过使用\count0=\fam
,\sbox{\diffdbox}{$\fam=\count0 \mathrm{d}$}
但没有任何变化。有人有什么想法吗?
\documentclass{article}
\usepackage{mathtools}
\newsavebox\diffdbox
\newcommand{\dd}{%
\sbox{\diffdbox}{$\mathrm{d}$}%
\hskip\wd\diffdbox
\pdfsave%
\pdfsetmatrix{1 0 0.2 1}%
\mathllap{\mathrm{d}}%
\pdfrestore}
\begin{document}
\[
d \mathrm{d} d
\]
\[
d \dd d
\]
\[
x_{d \mathrm{d} d}
\]
\[
x_{d \dd d}
\]
\end{document}
答案1
我不敢问这个符号有什么用途。
有一种更简单的方法:定义倾斜的数学字母。
\documentclass{article}
\usepackage{mathtools}
\DeclareMathAlphabet{\mathsl}{\encodingdefault}{\familydefault}{m}{sl}
\SetMathAlphabet{\mathsl}{bold}{\encodingdefault}{\familydefault}{bx}{sl}
\newcommand{\dd}{\mathsl{d}}
\begin{document}
\begin{gather*}
d \mathrm{d} d
\\
d \dd d
\\
x_{d \mathrm{d} d}
\\
x_{d \dd d}
\end{gather*}
\boldmath
\begin{gather*}
d \mathrm{d} d
\\
d \dd d
\\
x_{d \mathrm{d} d}
\\
x_{d \dd d}
\end{gather*}
\end{document}
如果您确实想手动倾斜符号(我不明白为什么不使用斜体),请使用\mathpalette
:
\documentclass{article}
\usepackage{mathtools}
\newsavebox\diffdbox
\newcommand{\dd}{{\mathpalette\makesl{d}}}
\newcommand{\makesl}[2]{%
\begingroup
\sbox{\diffdbox}{$\mathsurround=0pt#1\mathrm{#2}$}%
\pdfsave
\pdfsetmatrix{1 0 0.2 1}%
\rlap{\usebox{\diffdbox}}%
\pdfrestore
\hskip\wd\diffdbox
\endgroup
}
\begin{document}
\[
d \mathrm{d} d
\]
\[
d \dd d
\]
\[
x_{d \mathrm{d} d}
\]
\[
x_{d \dd d}
\]
\end{document}