
這一點很奇怪。經過一番努力,我將範圍縮小到 4 個包的某種組合。當我評論這 4 個包中的任何一個,錯誤消失。
微量元素
\documentclass[12pt,notitlepage]{article}
\usepackage{newtxmath}
\usepackage{siunitx}
\usepackage{bm}
\usepackage{esvect}
\begin{document} %equation is below is auto-generated by Maple 18.02
\[
\left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {{\it a4}\,{x}^{4
}+{\it a3}\,{x}^{3}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}}\,{\rm d}
x+{\it \_C1} \right\}
\]
\end{document}
現在
pdflatex
This is pdfTeX, Version 3.14159265-2.6-1.40.15 (TeX Live 2014) (preloaded
format=pdflatex)
restricted \write18 enabled.
entering extended mode
....
(/usr/local/texlive/2014/texmf-dist/tex/latex/newtx/untxsyc.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/esvect/uesvect.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/tex-gyre/t1qhv.fd)
(/usr/local/texlive/2014/texmf-dist/tex/latex/newtx/t1ntxtt.fd)
! LaTeX Error: Too many math alphabets used in version normal.
See the LaTeX manual or LaTeX Companion for explanation.
Type H <return> for immediate help.
...
l.12 ...}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}
}\,{\rm d}
?
現在,我可以理解何時包含一個包會導致錯誤。但為什麼當包含這 4 個看似完全不相關的套件時會導致錯誤呢?包可能bm
與什麼有關siunitx
?和newtxmath
有什麼關係esvect
?這一切對我來說似乎都是那麼隨機。
在使用 Miktex 的 Windows 上也會發生這種情況:
答案1
你只需要bm
提示你正在使用很多字母:
\documentclass[12pt,notitlepage]{article}
\usepackage{newtxmath}
\usepackage{siunitx}
\newcommand\bmmax{2}
\usepackage{bm}
\usepackage{esvect}
\begin{document} %equation is below is auto-generated by Maple 18.02
\[
\left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {{\it a4}\,{x}^{4
}+{\it a3}\,{x}^{3}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}}\,{\rm d}
x+{\it \_C1} \right\}
\]
\end{document}
答案2
TeX 只能容納 16 個數學字母。如果載入定義不同數學字母的包,則效果是累積的。因此,雖然其中任何 3 個軟體包可能會使總數少於 16 個,但所有 4 個軟體包可能會使總數超過 16 個,TeX 會抱怨,因為它無法處理您嘗試定義的第 17 個軟體包。
如果您只需要這些包中的一些字母,則可以從包中獲取所需位的代碼,從而有可能使總數回到 16 以下,而無需放棄任何您想要使用的內容。
對於這個特定的方程,可以進行以下操作:
\documentclass[12pt,notitlepage]{article}
\usepackage{newtxmath}
\usepackage{siunitx}
\usepackage{bm}
\usepackage{esvect}
\begin{document} %equation is below is auto-generated by Maple 18.02
\[
\left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {a4\,{x}^{4
}+a3\,{x}^{3}+a2\,{x}^{2}+a1\,x+a0}}}\,{\mathrm{d}}
x+\_C1 \right\}
\]
\end{document}
但是,當然,在這種情況下,數字不再是斜體。
答案3
只是為了好玩,假設你的 Maple 轉換器總是使用
{\it ...}
看來是這樣,這是避免這個問題的方法對於這個方程:
\documentclass[12pt,notitlepage]{article}
\usepackage{amsmath}
\usepackage{newtxmath}
\usepackage{siunitx}
\usepackage{bm}
\usepackage{esvect}
\let\it\relax
\DeclareRobustCommand\it{%
\ifmmode
\expandafter\mmit
\else
\normalfont\itshape
\fi
}
\def\mmit{%
\egroup % end the started group
\iftrue\expandafter\text\expandafter{\expandafter\itshape\else}\fi
}
\begin{document} %equation is below is auto-generated by Maple 18.02
\[
\left\{ y \left( x \right) =\int \!{\frac {1}{\sqrt {{\it a4}\,{x}^{4
}+{\it a3}\,{x}^{3}+{\it a2}\,{x}^{2}+{\it a1}\,x+{\it a0}}}}\,{\rm d}
x+{\it \_C1} \right\}
\]
\end{document}