当我尝试同时使用该calculator
包mtpro2
时,我收到一条错误消息。最近我发现这个问题与命令有关\SQRT
。
\documentclass[a4paper,11pt]{article}
\usepackage{txfontsb}
\usepackage[lite]{mtpro2}
\usepackage{calculator}
\begin{document}
$ \SQRT{x} $
\end{document}
我收到以下消息:
缺少数字,视为零。$ \SQRT{x} $ 非法测量单位(插入 pt)。$ \SQRT{x} $ 缺少 \ifdim 的 =。$ \SQRT{x} $ 缺少插入的控制序列。$ \SQRT{x} $ –
我怎样才能使用这两个包?
答案1
谢谢曼努埃尔的评论,mtpro2
显然也定义了\SQRT
。然后calculator
覆盖该定义,因为它稍后加载。因此,当您尝试使用 时\SQRT
,calculator
的定义是活动的。因此,您得到的错误与以下代码中的错误相同:
\documentclass{article}
\usepackage{calculator}
\begin{document}
$ \SQRT{x} $
\end{document}
这是因为calculator
试图取的平方根x
但x
不是一个数字,所以不能取其平方根。
如果有人想要演示的话:
\documentclass{article}
\usepackage{calculator}
\begin{document}
\[ \sqrt{x} \]
\SQRT{9}{\sol}
\[ \sqrt{x} = \sqrt{9} = \sol \]
\[ \SQRT{4}{\sol}\sqrt{4} = \sol \]
\end{document}
为了解决冲突,你可以从一个或其他包(无论你先加载哪个)重命名定义。因为我可以测试这一点,所以我将命令从重命名为calculator
:
\documentclass{article}
\usepackage{calculator}
\let\calcSQRT\SQRT
\usepackage{txfontsb}
\usepackage[lite]{mtpro2}
\begin{document}
\[ \sqrt{x} \]
\calcSQRT{9}{\sol}
\[ \sqrt{x} = \sqrt{9} = \sol \]
\[ \calcSQRT{4}{\sol}\sqrt{4} = \sol \]
\[ \SQRT{x} \]
\calcSQRT{9}{\sol}
\[ \SQRT{x} = \SQRT{9} = \sol \]
\[ \calcSQRT{4}{\sol}\SQRT{4} = \sol \]
\end{document}
注释掉相关行后,代码将产生与上图所示相同的输出。
正如发布的那样,mac 已确认该代码允许您继续使用\SQRT
Math Time Pro 2,尽管我自己无法测试这一点。