kpfonts、MnSymbol、eufrak 和太多数学字母

kpfonts、MnSymbol、eufrak 和太多数学字母

kpfonts我在使用'\mathfrak和 时遇到了问题MnSymbol。此示例会产生“数学字母太多”错误:

\documentclass{amsart}
\newcommand{\PrintMathFonts}{%
  \typeout{*** Math fonts list ***}
  \count255=0
  \loop\ifnum\count255<16
    \typeout{(\the\count255: \the\textfont\count255=\fontname\textfont\count255)}        \advance\count255 by 1
  \repeat
  \typeout{***}}
\usepackage{MnSymbol}
\usepackage[light,onlyrm,notext,noamsmath,notextcomp,sfmathbb,frenchstyle]{kpfonts}
\DeclareMathAlphabet\mathfrak{U}{euf}{m}{n}
\SetMathAlphabet\mathfrak{bold}{U}{euf}{b}{n}
\begin{document}
  \PrintMathFonts
  \begin{align*}
    \mathfrak{Suca}\amalg A = x-2 \neq\mathcal{A}=\mathscr{F}=
      \mathbb{R}=\mathsf{C} \rightarrow \rightrightarrows
  \end{align*}
\end{document}

我的目标是忽略kpfonts'\mathfrak而使用eufrak,但如果我也想使用MnSymbol,那么它就行不通了。我还尝试了 的 cmsy 选项MnSymbol和各种kpfonts选项,但都无济于事。

ps 这个问题的解决方案带有 eufrak 的 kpfonts似乎不起作用,而其他答案提供的解决方案有效,除非您加载了太多字母。

pps 我\PrintMathFonts从这个答案中得到了诀窍诊断“数学字母太多”错误

答案1

分配新的数学字母表很方便,但可能会导致臭名昭著的“数学字母表太多”错误。但是,如果只需要 Fraktur 字母的文本大小,那么可以很好地避免这种情况

\newcommand\mathfrak[1]{\mbox{\usefont{U}{euf}{m}{n}#1}}

不会浪费任何数学字母。

我真的不认为 MnSymbol 与 Kp 字体配合得很好。如果只MnSymbol需要有限数量的符号,则可以在不分配数学组的情况下使用它们。但应该知道你使用什么符号来提供精确的建议。

相关内容