首先让我给你举这个最简单的例子:
\documentclass[11pt]{minimal}
\usepackage[retainmissing, abx]{MnSymbol}
\usepackage{fontspec}
\begin{document}
\[ \mathcal{ABC 123} \]
\end{document}
我正在用 编译它xelatex
。
看来,MnSymbolabx
在执行\mathcal{}
命令时选项失败。我收到很多错误,但它们看起来都差不多:
kpathsea: Running mktexmf mathcm10
! I can't find file `mathcm10'. <*> ...ljfour; mag:=1; nonstopmode; input mathcm10 Please type another input file name ! Emergency stop. <*> ...ljfour; mag:=1; nonstopmode; input mathcm10 Transcript written on mfput.log.
grep: mathcm10.log: No such file or directory
mktextfm: `mf-nowin -progname=mf \mode:=ljfour; mag:=1; nonstopmode; input mathcm10' failed to make mathcm10.tfm.
kpathsea: Appending font creation commands to missfont.log.
那么,我该怎么做呢?我是不是应该不使用Mn符号和abx
?
答案1
这个包中MnSymbol
有非常可疑的代码:
\DeclareOption{abx}{%
\def\Mn@Load@Cal@Font{%
\DeclareFontFamily{OT1}{mathc}{}%
\DeclareFontShape{OT1}{mathc}{m}{n}{ <-> mathcm10 }{}%
\DeclareFontShape{OT1}{mathc}{b}{n}{ <-> mathcb10 }{}%
\DeclareMathAlphabet\mathcal{OT1}{mathc}{m}{n}%
\SetMathAlphabet\mathcal{bold}{OT1}{mathc}{b}{n}}}
mathcm10
发行版中没有字体mathabx
。也没有粗体字体,因此定义粗体字体是荒谬的。
相关字体被调用mathc10
,所以你已经完成了
\documentclass[11pt]{article}
\usepackage[retainmissing]{MnSymbol}
\DeclareFontFamily{OT1}{mathc}{}
\DeclareFontShape{OT1}{mathc}{m}{n}{ <-> mathc10 }{}
\DeclareMathAlphabet\mathcal{OT1}{mathc}{m}{n}
\usepackage{fontspec}
\begin{document}
\[ \mathcal{ABC 123} \]
\end{document}
这是字体表mathc10