Latex 考试课程:答案的线宽

Latex 考试课程:答案的线宽

我正在使用 latex 考试类来回答简短的问题,这些问题提供了答案行。以下代码为我提供了横跨整个页面宽度的答案行。我想控制这些行的宽度,以便我可以根据我的选择缩小它们(1 英寸、2 英寸等)。

\begin{document}
\begin{questions}
\question What is your name? \fillwithlines{3cm}
\end{questions}
\end{document}

举个例子,这是我使用现有代码得到的结果:

在此处输入图片描述

而我想要的是以下的东西: 在此处输入图片描述

我将非常感激您在这方面提供的任何帮助。谢谢

答案1

正如评论中提到的,使用minipage环境可能是最简单的解决方案。如果您经常这样做,您可以创建minipage该命令的一个版本。这需要一个可选的宽度参数,如果不使用,则\fillwithlines默认为。\linewidth

\documentclass{exam}
\NewDocumentCommand{\Fillwithlines}{O{\linewidth}m}{
\par\begin{minipage}{#1}
\fillwithlines{#2}
\end{minipage}}
\begin{document}
\begin{questions}
\question What is the answer to this question?

\Fillwithlines[3in]{1in}

\question What is the answer to this question?

\Fillwithlines{1in}
\end{questions}
\end{document}

代码输出

答案2

此代码将线的硬连线长度()替换为可在问题之前设置的\hsize自定义长度( )。\linelength

b

\documentclass{exam}
    
%**************************************** added <<<<<<<<<<<<
\usepackage{xpatch}
\newlength{\linelength}
\setlength{\linelength}{\hsize}% default length
\makeatletter
\xpatchcmd{\do@fillwithlines}
{\hsize}{\linelength}{}{}
\makeatother
%****************************************

\begin{document}
    \begin{questions}
        \setlength{\linelength}{1.5in}% choose the line length <<<<<<<<<<<<<<<<<<<<
        \question What is your name? \fillwithlines{3cm}
                    
        \setlength{\linelength}{2.5in}% choose the line length <<<<<<<<<<<<<<<<<<<<
        \question What is your name? \fillwithlines{3cm}
    \end{questions}

\end{document}

相关内容