Latex 考试类别:考试类别“solutionorlines”环境的自定义线宽

Latex 考试类别:考试类别“solutionorlines”环境的自定义线宽

我正在使用 latex 考试类的“solutionorlines”环境来处理简短的问题(带解决方案),它提供了答案行。以下代码为我提供了横跨整个页面宽度的答案行。我想控制这些行的宽度,以便我可以根据我的选择缩小它们(1 英寸、2 英寸等)。因为我已经写了很多问题,所以最好有一个文档范围的解决方案。

\documentclass{exam}
%\printanswers
\begin{document}

\begin{questions}
    \question List down three alphabets.
    \begin{solutionorlines}[3cm]
    \begin{enumerate}
          \item a
          \item b
          \item c 
        \end{enumerate}
    \end{solutionorlines}
\end{questions}

\end{document}

举个例子,这是我使用现有代码得到的结果: 在此处输入图片描述

而我想要的是以下的东西:

在此处输入图片描述

答案1

您可以重新定义\linefill宏(不知道考试类别是否也将其用于其他用途,因此请自行承担风险):

\documentclass{exam}
%\printanswers

\renewcommand\linefill{\leavevmode\rule{.4\textwidth}{\linefillthickness}}

\begin{document}

\begin{questions}
    \question List down three alphabets.
    \begin{solutionorlines}[3cm]
    \begin{enumerate}
          \item a
          \item b
          \item c 
        \end{enumerate}
    \end{solutionorlines}
\end{questions}

\begin{questions}
    \question List down three alphabets.
    \renewcommand\linefill{\leavevmode\rule{.8\textwidth}{\linefillthickness}}
    \begin{solutionorlines}[3cm]
    \begin{enumerate}
          \item a
          \item b
          \item c 
        \end{enumerate}
    \end{solutionorlines}
\end{questions}

\begin{questions}
    \question List down three alphabets.
    \begin{solutionorlines}[3cm]
    \begin{enumerate}
          \item a
          \item b
          \item c 
        \end{enumerate}
    \end{solutionorlines}
\end{questions}

\end{document}

在此处输入图片描述

答案2

最简单的解决方案是将问题放在小页面内。

\documentclass{exam}
%\printanswers
\begin{document}

\begin{questions}
  
  \begin{minipage}{2in}
    \question List down three alphabets.\\
    \begin{solutionorlines}[3cm]
      \begin{enumerate}
          \item with a very long line of text
          \item b
          \item c 
      \end{enumerate}
    \end{solutionorlines}
  \end{minipage}
\end{questions}

\end{document}

相关内容