
我嘗試在 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}
使用\def\stepsize{\numexpr180/\step\relax}
TikZ 看到的是未展開的宏,而不是數字本身。\number
導致\numexpr
被評估並產生 TikZ 所需的實際數字。