با سلام
شما با tikz می توانید برای گزینه ها هر شکل دلخواهی را رسم کنید.
\documentclass[a4paper]{article}
\usepackage{multicol}
\usepackage{tikz}
\newcommand{\repeatntimes}[2]{
\newcount\i
\i=0
\newtoks\ans
\loop
\ans=\expandafter{\the\ans #2}
\advance\i by 1
\ifnum\i<#1\repeat
\the\ans
}
\newcommand{\countRepeatntimes}[2]{
\newcount\i
\i=0
\newtoks\ans
\loop
\advance\i by 1
\ans=\expandafter{\the\ans #2}
\ifnum\i<#1\repeat
\the\ans
}
\newcounter{row}
\setcounter{row}{1}
\newcommand{\co}{\arabic{row}\stepcounter{row}}
\newcommand{\generateTable}[1]{%
\countRepeatntimes{#1}{%
\begin{itemize}
\item[\textbf{\co.}] \repeatntimes{4}{
\textcolor{lightgray}{
\begin{tikzpicture}
\draw[](0,0)ellipse(3mm and 2mm);
\end{tikzpicture}
}}
\end{itemize}
}
}
\begin{document}
\def\qCount{80}
\begin{multicols*}{3}% عدد ۳ رو برای تغییر دادن تعداد ستونها کم و زیاد کنید
\generateTable{\qCount}
\end{multicols*}
\end{document}
اگر به کد فوق دقت کنید در قسمت:
\begin{tikzpicture}
\draw[](0,0)ellipse(3mm and 2mm);
\end{tikzpicture}
یک بیضی توسط tikz ترسیم شده است. فقط دقت کنید که هنگام ترسیم تصاویر با tikz حتما بسته tikz را فراخوانی کنید.
\usepackage{tikz}
اکنون فرض کنید میخواهید درون هر بیضی یک متن نیز مثل a تا d نیز بنویسید، کافی است دستور \generateTable
را به صورت زیر تغییر دهید:
\newcommand{\generateTable}[1]{%
\countRepeatntimes{#1}{%
\begin{itemize}
\item[\textbf{\co.}]
\textcolor{lightgray}{
\begin{tikzpicture}
\draw[](0,0)ellipse(3mm and 2mm) node[midway]{a};
\draw[xshift=7mm](0,0)ellipse(3mm and 2mm) node[midway]{b};
\draw[xshift=14mm](0,0)ellipse(3mm and 2mm) node[midway]{c};
\draw[xshift=21mm](0,0)ellipse(3mm and 2mm) node[midway]{d};
\end{tikzpicture}
}
\end{itemize}
}}
در این حالت به جای استفاده از \repeatntimes
چهار بیضی که نسبت به یکدیگر shiftt یافته اند ایجاد میشود که درون هر یک با استفاده از دستور node در tikz متن داخل {}
نوشته میشود. دقت کنید که midway موجب می شود که عبارت نوشته شده در وسط شکل (بیضی) قرار گیرد.
در گام بعدی فرض کنید که می خواهید درون بیضی ها رنگ خاکستری روشن شود و خود حروف a تا d نیز با رنگ قرمز نوشته شود، برای این کار خیلی راحت می توانید به صورت زیر عمل کنید.
\begin{tikzpicture}
\draw[,fill=gray!10](0,0)ellipse(3mm and 2mm) node[midway,red]{a};
\draw[xshift=7mm,fill=gray!10](0,0)ellipse(3mm and 2mm) node[midway,red]{b};
\draw[xshift=14mm,fill=gray!10](0,0)ellipse(3mm and 2mm) node[midway,red]{c};
\draw[xshift=21mm,fill=gray!10](0,0)ellipse(3mm and 2mm) node[midway,red]{d};
\end{tikzpicture}
در نهایت خواهیم داشت: