我想将多份试卷以装订成册的形式捆绑在一起,作为练习题分发。试卷主要是客观的 MCQ。每章都会有初始描述(文本、图片和图表),然后是一系列多项选择题。我使用 来exam class
生成 MCQ 考试,如下面的代码所示。如何将其与书籍模板或其他类结合起来以实现我想要做的事情?
%\documentclass{article}
\documentclass{exam}
\usepackage{graphicx}
\usepackage[export]{adjustbox}
\begin{document}
\begin{questions}
\question
[A]
question 1 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\question
[B]
question 2 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\question
[A]
question 3 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\question
[D]
question 4 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\end{questions}
\end{document}
答案1
我假设 OP 只想包含一些像在exam
课堂上一样输入的多项选择题,即questions
类似于enumerate
但使用\question[points]
命令而不是的环境;以及类似于内联枚举的\item
多项选择环境( ),而不是。oneparchoices
\choice
\item
两种环境都可以使用enumitem
包。它提供可配置列表以及可配置内联列表。因此,在enumitem
文档和\newlist 与 \newenvironment 定义单独的列表样式和使用 enumitem 创建列表样式,接下来可以做
\documentclass{article}
\usepackage{enumitem}
\usepackage{xparse}
%Idea from https://tex.stackexchange.com/a/236668/1952
\DeclareDocumentCommand\question{o}{%
\item\IfNoValueTF{#1}{}{(#1 points)}}
\newenvironment{questions}[1][]{\enumerate[,#1]}{\endenumerate}
\newlist{oneparchoices}{enumerate*}{1}
\setlist[oneparchoices,1]{label=\Alph*., itemjoin={{\quad}}}
\newcommand{\choice}{\item}
\begin{document}
Some questions to start with
\begin{questions}[start=4] %<--- start option fixes number for first question
\question[A] question 1 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\question[B] question 2 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\question question \label{q}\ref{q} without points
\end{questions}
and, now, two more
\begin{questions}[resume] %<--- resume option follows counting from last time
\question[A] question 1 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\question[B] question 2 \\
\begin{oneparchoices}
\choice option 1
\choice option 2
\choice option 3
\choice option 4
\end{oneparchoices}
\end{questions}
\end{document}