4개 패키지만 사용할 때 일반 버전에서 수학 알파벳이 너무 많이 사용됨

4개 패키지만 사용할 때 일반 버전에서 수학 알파벳이 너무 많이 사용됨

이것은 매우 이상합니다. 많은 고민 끝에 4개의 패키지 조합으로 범위를 좁혔습니다. 내가이 4개 패키지 중 하나를 댓글로 달아주세요., 오류가 사라집니다.

MWE

\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가 설치된 창에서도 이런 현상이 발생합니다.

Mathematica 그래픽

답변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

재미삼아, 메이플 변환기가 항상 다음을 사용한다고 가정해 보겠습니다.

{\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}

여기에 이미지 설명을 입력하세요

관련 정보