![flacards 和 forloop 可以工作,但 tikz foreach 不行](https://linux22.com/image/240784/flacards%20%E5%92%8C%20forloop%20%E5%8F%AF%E4%BB%A5%E5%B7%A5%E4%BD%9C%EF%BC%8C%E4%BD%86%20tikz%20foreach%20%E4%B8%8D%E8%A1%8C.png)
在您的帮助下,我的闪存卡\forloop
可以使用了。我尝试使用\foreach
(tikz),但它不起作用。pdf 文件只包含右下角的一张闪存卡、第 24 张卡和第 48 张卡……
最小的非工作示例是:
\documentclass{flacards}
\usepackage[frenchb]{babel}
\usepackage{tikz}
\begin{document}
\foreach \x in {1,2,...,50}{\card{a}{b}}
\end{document}
但该\forloop
版本可以正常工作:
\documentclass{flacards}
\usepackage[frenchb]{babel}
\usepackage{forloop}
\begin{document}
\newcounter{compteura}
\forloop{compteura}{1}{\value{compteura} < 11}{\card{a}{b}}
\end{document}
我更喜欢使用tikz
它来进行数学运算。在此之前,我使用包calc
在计数器上进行数学运算。
答案1
我认为问题在于,事实上,\foreach
所有事情都是在一个小组内完成的,而这,出于某种原因,与卡片生产相冲突标语牌;实际上只打印了每页的最后一张卡片。
为了验证我的断言是否正确,我进行了以下测试:
\documentclass{minimal}
\usepackage{tikz}
\begin{document}
\foreach \x in {1}{\def\pippo{X}}
\show\pippo
\stop
并且 TeX 会提示
> \pippo=undefined.
l.5 \show\pippo
不幸的是,删除由 开始的组\foreach
似乎也没有什么作用(很可能使用了其他组)。
如果您只在以下情况下需要该\foreach
函数,那么{1,2,...,50}
很容易用其他循环替换它,正如您已经知道的那样。如果需要“列表”处理,请更新您的问题。使用电子工具箱处理值列表非常方便。