我的目标是创建多项选择答题纸。我已经设法使用 tikz 创建了带圆圈的字母环境,但我的问题是,是否可以创建一个宏来重复条目输入,\item abcdtest
因为它看起来是相同的,\mcquestion{n}
其中 n 是您想要的 MC 项目的数量。
简而言之,我想替换:
\begin{enumerate}
\item \abcdtest
\item \abcdtest
\item \abcdtest
\item \abcdtest
\item \abcdtest
\item \abcdtest
\item \abcdtest
\item \abcdtest
\end{enumerate}
例如\mcquestion{8}
。
这是我目前拥有的示例代码。任何有关此事的见解都会有所帮助。
\documentclass{article}
\usepackage{amsmath,amssymb}
\usepackage{tikz}
\newcommand\abcdtest{%
\noindent\lower1.5ex\hbox{%
\begin{tikzpicture}
\foreach \i in {1,...,4}
{
\path (\i cm,0cm) coordinate (C\i);
\draw (C\i) circle (0.35cm);
}
\foreach \j/\k in {1/A,2/B,3/C,4/D}
{
\draw (\j cm,0cm) node {\k};
}
\end{tikzpicture}}}
\begin{document}
%-----------------------------------------------------------------
\begin{enumerate}
\item \abcdtest
\item \abcdtest
\end{enumerate}
\end{document}
答案1
您使用的命令\foreach
不仅限于 tikz 元素。它可以在任何地方使用。添加
\newcommand{\mcquestion}[1]{
\foreach \i in {1,...,#1} {
\item \abcdtest
}
}
你的序言让你有一份文件
\begin{document}
\begin{enumerate}
\mcquestion{6}
\end{enumerate}
\end{document}
屈服