使用MnSymbol软件包时,pdflatex会提供两种字体警告:

LaTeX Font Warning: Encoding 'OMS' has changed to 'U' for symbol font
(Font)              'symbols' in the math version 'normal' on input line 120.

LaTeX Font Info:    Overwriting symbol font 'symbols' in version 'normal'
(Font)                  OMS/cmsy/m/n --> U/MnSymbolF/m/n on input line 120.

事实证明,这可能是由于与AMSSymb包的冲突造成的。

因为我只需要包中的几个符号:有没有办法从包中加载一个符号,而不是所有符号?

有帮助吗?

解决方案

以下是我解决这个问题的方法:

下载perl脚本<!> quot; makefakeMnSymbol <!> quot;来自综合乳胶符号文件来源: http://mirror.ctan.org/info/symbols/comprehensive/source/ makefakeMnSymbol

接下来,在命令行中执行chmod +x makefakeMnSymbol以使其可执行。然后,运行

./makefakeMnSymbol `kpsewhich MnSymbol.sty` > fakeMnSymbol.sty

将fakeMnSymbol.sty放入选择的texmf目录(全局或本地),然后运行texhash

如果你现在放

\usepackage{fakeMnSymbol}

在你的序言中,你现在可以使用任何MnSymbol,比如\powerset,就像\MNSpowerset

前缀一样

非常感谢Scott Pakin的这次黑客攻击......以及他全面的符号指南......


这个hack在下标/上标中有符号问题。解决方法是使用fakeMnSymbol.sty源查看您想要加载的符号的字体及其编号。这是我的一个前导码中的示例,其中我用MnSymbol覆盖了内置的\boxminus

\usepackage[]{fakeMnSymbol}
\DeclareSymbolFont{mnsymbolc}{U}{MnSymbolC}{m}{n}
\let\boxminus=\undefined
\DeclareMathSymbol{\boxminus}{2}{mnsymbolc}{112}

其他提示

这些警告无需担心。事实上,在下一个LaTeX版本中,它们将会消失(参见原始错误报告)。但是,没有ETA。

  

此外,这是否有可能影响文件的排版?

不。

  

有什么方法可以阻止这种情况吗?

可以在加载包之前修补LaTeX警告消息代码,然后再重新恢复(这是我过去在自己的包中所做的),但作为用户,我只是学会忽略警告。

以下内容可能有所帮助。这是我必须添加的代码,以便从MnSymbol包中获得\ bigominus符号。

\ DeclareFontFamily【U} {MnSymbolF} {},点击 \ DeclareSymbolFont {mnsymbols} {U】【MnSymbolF} {米} {N},点击 \ DeclareFontShape【U} {MnSymbolF} {米} {N} {结果     LT <!>; -6 GT <!>; MnSymbolF5结果    <!> LT; 6-7 GT <!>; MnSymbolF6结果    <!> LT; 7-8 GT <!>; MnSymbolF7结果    <!> LT; 8-9 GT <!>; MnSymbolF8结果    <!> LT; 9-10 GT <!>; MnSymbolF9结果   <!> LT; 10-12 GT <!>; MnSymbolF10结果   LT; 12 - GT <!> <!>; MnSymbolF12} {}点击 \ DeclareMathSymbol {\ bigominus} {\ mathop} {mnsymbols} {55}

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top