tikz 绘图中缺少 \endcsname

tikz 绘图中缺少 \endcsname

我尝试在 TeX 中做一些计算来帮助我画一幅画,但我无法克服这个错误:

 ! Missing \endcsname inserted.
<to be read again> 
\numexpr 
l.12 \draw (0,0)--(\stepsize:\radius)
                                   ;

这是最小代码:

 \documentclass{article} 
    \usepackage{tikz} 
    \usepackage[active,tightpage]{preview}
    \setlength\PreviewBorder{2pt}
    \begin{document} 
    \begin{preview}
    \def\radius{10}
    \def\step{5}
    \begin{tikzpicture}
    \def\stepsize{\numexpr180/\step\relax}
    \draw (0,0)--(\stepsize:\radius);
    \end{tikzpicture}
    \end{preview}
    \end{document}

在网上随便看看例子应该工作,但我可能忽略了一些非常琐碎的事情或不了解一些基本的事情。

答案1

我遇到了类似的问题,并使用以下方法解决了\number

\documentclass{article} 
\usepackage{tikz} 
\usepackage[active,tightpage]{preview}
\setlength\PreviewBorder{2pt}
\begin{document} 
\begin{preview}
\def\radius{10}
\def\step{5}
\begin{tikzpicture}
\def\stepsize{\number\numexpr180/\step\relax}%% <<<---
\draw (0,0)--(\stepsize:\radius);
\end{tikzpicture}
\end{preview}
\end{document}

TikZ\def\stepsize{\numexpr180/\step\relax}看到的是未扩展的宏,而不是数字本身。\number导致\numexpr被评估并产生 TikZ 需要的实际数字。

相关内容