在考试文档类中设置所选的缩进

在考试文档类中设置所选的缩进

我想创建一个具有这种缩进格式的多项选择题

1. ########
   A. ###
   B. ###
   C. ###
2. ########
   ########
   A. ###
   B. ###
   C. ###

选项的缩进与问题文本相同。

但是,使用默认的examdocumentclass,我得到了这种格式

1. ########
     A. ###
     B. ###
     C. ###
2. ########
   ########
     A. ###
     B. ###
     C. ###

因此,我尝试在环境内部进行设置\leftmargin以获得我想要的东西。0ptchoices

\documentclass{exam}
\begin{document}
\begin{questions}
  \question
  How old are you?
  \begin{choices}
    \setlength{\leftmargin}{0pt}
    \choice 14
    \choice 17
    \choice 19
    \choice 20
    \choice 23
  \end{choices}
\end{questions}
\end{document}

但,却毫无进展。

那么,在documentclasschoice中设置缩进的正确方法是什么?exam

答案1

按照第 4.10 节的规定exam文档,我相信你正在寻找choiceshook,它可以按如下方式使用,例如

\renewcommand{\questionshook}{%
    \setlength{\leftmargin}{30pt}%
}
\renewcommand{\choiceshook}{%
    \setlength{\leftmargin}{50pt}%
}

这是一个完整的 MWE- 我加载了geometry包装showframe=true仅用于演示。

% arara: pdflatex
% !arara: indent: {overwrite: true}
\documentclass{exam}
\usepackage[showframe=true]{geometry}

\renewcommand{\questionshook}{%
    \setlength{\leftmargin}{30pt}%
}
\renewcommand{\choiceshook}{%
    \setlength{\leftmargin}{50pt}%
}
\begin{document}
\begin{questions}
    \question
    How old are you?
    \begin{choices}
        \choice 14
        \choice 17
        \choice 19
        \choice 20
        \choice 23
    \end{choices}
\end{questions}
\end{document}

作为参考,以下是exam文档中的一段引文

考试文件类定义如下:

\newcommand{\questionshook}{} 
\newcommand{\partshook}{}
\newcommand{\subpartshook}{} 
\newcommand{\subsubpartshook}{}
\newcommand{\choiceshook}{} 
\newcommand{\checkboxeshook}{} 

因此,默认情况下这些命令不起作用,但您可以使用 \renewcommand 命令更改其中任何一个。

答案2

试试这个

\uplevel{
\begin{choices}
    \choice 
    \choice 
    \choice 
    \choice 
\end{choices}}

答案3

  1. 在你的 latex 文件夹中找到你的“exam.cls”。

  2. 打开它,

改成 \settowidth{\leftmargin}{W.\hskip\labelsep\hskip 2.5em}%\settowidth{\leftmargin}{W.\hskip\labelsep\hskip 0em}%

  1. 节省。

相关内容