我正在使用 TiKZ 2.10 创建一个包含 tikzpicture 的文档\pgfmathmin
(是的,我也有\usetikzlibrary{calc}
)。以前该文档编译得很好,但现在我收到如下错误:
软件包 PGF 数学错误:未知函数“getargs”(在‘getargs(3,4)’中)
我可以通过将 替换 来消除这个问题\pgfmathmin{3}{4}
,\pgfmathparse{min(3,4)}
但我不确定为什么前者不再起作用。
我是否误用了\pgfmathmin
命令?
编辑:一个最小的编译示例(TiKZ 版本大约为 2.10,miktex 2.9 中包含的版本)
\documentclass{minimal}
\usepackage{tikz}
\begin{document}
\pgfmathmin{1}{2} \pgfmathresult % This yields an error message about getargs
\end{document}
答案1
\pgfmathmin
和命令的执行好像出了问题\pgfmathmax
。
在pgfmathfunctions.misc.code.tex
(文件夹中texlive/2010/texmf-dist/tex/generic/pgf/math
),您可以更改以下行的两次出现
\pgfmathparse{getargs(#1,#2)}%
到
\pgfmathparse{#1,#2}%
那么下面的代码应该可以工作
\documentclass{minimal}
\usepackage{tikz}
\begin{document}
\pgfmathmin{1,-3,5}{0,2} \pgfmathresult % This doesn't work without the fix
\pgfmathparse{min(1,-3,5,0,2)} \pgfmathresult % This does
\end{document}
答案2
这个问题在 pgf 2.00 cvs 中出现,现在在 pgf 2.1 中也出现。pgfmathmax 也出现这个问题。pgfmathmin 的第一个版本只使用 2 个参数。最好的方法是避免使用 pgfmathmin 和 pgfmathmax,而是使用新函数并编写 pgfmathparse{min(1,-3,5,0,2)} 使用 pgfmathmin 可以间接使用 pgfmathparse。
阿兰·马特斯