我有一個名為 \task 的宏,它以特定方式格式化文字。現在,對於每個任務,我都必須將任務名稱新增為一列,並在下方新增一個空白儲存格。
那麼我該如何實現以下目標呢?
\documentclass{article}
\newcommand{\task}[1]{\par \bigskip \noindent {\bf{Task {#1}}}}
\newcommand{\makeTasktable}{%
\begin{tabular}{*{10}{|c}}
% For every \task do:
% echo taskname &
% done
1.1 & 1.2 & 1.3 \\
\hline
% For every \task do:
% echo &
% done
& &
\end{tabular}
}
\begin{document}
\makeTasktable
\task{1.1} Foo
\task{1.2} Bar
\task{1.3} Baz
\end{document}
答案1
使用包exsheets
.成績表甚至作為範例文件提供,複製/貼上即可完成。
\documentclass{article}
\usepackage{exsheets}
\SetupExSheets{
counter-format=se.qu,
counter-within=section,
headings=runin,
}
\DeclareTranslation{english}{exsheets-exercise-name}{Task}
\begin{document}
\section{Capybara}
\begin{question}{2}
Foo
\end{question}
\begin{question}{6}
Bar
\end{question}
\section{Wombat}
\begin{question}{1}
Baz
\end{question}
\bigskip\noindent
\begin{tabular}{|l|*{\numberofquestions}{c|}c|}\hline
Task & \ForEachQuestion{\QuestionNumber{#1}\iflastquestion{}{&}} & Total \\ \hline
Points & \ForEachQuestion{\GetQuestionProperty{points}{#1}\iflastquestion{}{&}} & \pointssum* \\ \hline
Reached & \ForEachQuestion{\iflastquestion{}{&}} & \\ \hline
\end{tabular}
\end{document}