当我使用 TikZ 迭代数字时\foreach
,它们会存储在宏中。现在,当我需要与此宏对应的字母时,我只能通过将其保存到计数器然后再次接收它来转换它。
\foreach \n in {1,...,10} {
\setcounter{number}{\n}
\edef\letter{\alph{number}}
}
直接发行
\alph{\n}
不起作用。我认为避免计数器会更有效率。是否可以直接转换?
答案1
\alph
期望后面跟着一个计数器。
但你可以利用\alph
\documentclass{article}
\usepackage{pgffor}
\makeatletter
\def\aeAlph#1{\@alph{#1}}
\makeatother
\begin{document}
\foreach \n in {1,...,10}{
\edef\letter{\aeAlph{\n}}
Letter=\letter\par
}
\end{document}
texdef -t latex alph
从命令行调用
\alph:
macro:#1->\expandafter \@alph \csname c@#1\endcsname
它告诉您采用计数器的名称并通过LaTeX 存储计数器值的方式\alph
“查找”其值。\csname c@#1\endcsname