Classe de exame Latex: largura de linha personalizada para o ambiente "solutionorlines" da classe de exame

Classe de exame Latex: largura de linha personalizada para o ambiente "solutionorlines" da classe de exame

Estou usando o ambiente "solutionorlines" da aula de exame de látex para perguntas curtas (com solução) que fornecem linhas para respostas. Os códigos de código a seguir fornecem linhas para respostas que abrangem toda a largura da página. Quero controlar a largura dessas linhas para poder reduzi-las de acordo com minha escolha (1 polegada, 2 polegadas etc.). Como já escrevi muitas perguntas, seria bom ter uma solução para todo o documento também.

\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}

Por exemplo, isto é o que obtenho com o código existente: insira a descrição da imagem aqui

Considerando que eu quero algo como o seguinte:

insira a descrição da imagem aqui

Responder1

Você poderia redefinir a \linefillmacro (não faço ideia se a classe do exame também usa isso para outras coisas, então use por sua conta e risco):

\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}

insira a descrição da imagem aqui

Responder2

A solução mais simples é colocar a pergunta dentro de uma minipágina.

\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}

informação relacionada