我听从了这里将 MnSymbol 中的符号添加到我的文档中,当符号出现时,间距很糟糕。事实上,我必须使用它\mathchoice
在文本模式和显示模式下获得不同的积分,所以我需要,\mathchoice
但间距很糟糕。以下是代码:
\documentclass[12pt]{article}
\DeclareFontFamily{U} {MnSymbolF}{}
\DeclareFontShape{U}{MnSymbolF}{m}{n}{
<-6> MnSymbolF5
<6-7> MnSymbolF6
<7-8> MnSymbolF7
<8-9> MnSymbolF8
<9-10> MnSymbolF9
<10-12> MnSymbolF10
<12-> MnSymbolF12}{}
\DeclareFontShape{U}{MnSymbolF}{b}{n}{
<-6> MnSymbolF-Bold5
<6-7> MnSymbolF-Bold6
<7-8> MnSymbolF-Bold7
<8-9> MnSymbolF-Bold8
<9-10> MnSymbolF-Bold9
<10-12> MnSymbolF-Bold10
<12-> MnSymbolF-Bold12}{}
\DeclareSymbolFont{MnSyF} {U} {MnSymbolF}{m}{n}
\DeclareMathSymbol{\tstrokedint}{\mathbin}{MnSyF}{"60}
\DeclareMathSymbol{\dstrokedint}{\mathbin}{MnSyF}{"61}
\def\strokedint{\mathchoice{\dstrokedint}{\tstrokedint}{\tstrokedint}{\tstrokedint}}
\begin{document}
$\strokedint_D$ $\tstrokedint_D$ $\dstrokedint_D$
$$\strokedint_D$$
\end{document}
输出如下:
红色箭头表示错误的间距(带有\mathchoice
),绿色箭头表示正确的间距(直接访问符号,不带有\mathchoice
)。
有人知道如何同时获得\mathchoice
正确的间距吗?
答案1
如果你声明它为\mathop
更大的尺寸将通过字体指标找到,你不需要\mathchoice
\documentclass[12pt]{article}
\DeclareFontFamily{U} {MnSymbolF}{}
\DeclareFontShape{U}{MnSymbolF}{m}{n}{
<-6> MnSymbolF5
<6-7> MnSymbolF6
<7-8> MnSymbolF7
<8-9> MnSymbolF8
<9-10> MnSymbolF9
<10-12> MnSymbolF10
<12-> MnSymbolF12}{}
\DeclareFontShape{U}{MnSymbolF}{b}{n}{
<-6> MnSymbolF-Bold5
<6-7> MnSymbolF-Bold6
<7-8> MnSymbolF-Bold7
<8-9> MnSymbolF-Bold8
<9-10> MnSymbolF-Bold9
<10-12> MnSymbolF-Bold10
<12-> MnSymbolF-Bold12}{}
\DeclareSymbolFont{MnSyF} {U} {MnSymbolF}{m}{n}
\DeclareMathSymbol{\strokedintop}{\mathop}{MnSyF}{"60}
\def\strokedint{\strokedintop\nolimits}
\begin{document}
$\strokedint_D$ $\strokedint_D$ $\displaystyle\strokedint_D$
$$\strokedint_D$$
\end{document}