如何在考试类的解决方案环境中实现未加星号的 vspace 选项?

如何在考试类的解决方案环境中实现未加星号的 vspace 选项?

我知道考试类有一个选项可以使用\unstarredvspace,这样如果空格出现在页面顶部,就会被删除。现在默认是\vspace* 这样的\begin{solution}[4cm]。手册说我可以将可选参数更改为,\unstarredvspace但我不知道该怎么做。如果我把\vspace选项放在问题后面,打印答案会在打印解决方案框之前留下那个垂直空间,而我不想要。

\documentclass[11pt]{exam}
% \printanswers
\begin{document}
\begin{questions}
\question This is the first question
\begin{solution}[20cm]

This is the solution part
\vspace{12cm}
hello
\end{solution}
\question This is the 2nd question
\begin{solution}[10cm]

This is the solution part
\vspace{9cm}
hello
\end{solution}

\question This is the 3rd question
\begin{solution}[14cm]

This is the solution part
\vspace{9cm}
hello
\end{solution}

\question This is the 4th question%%%%see how there is space at the top of the page?
\vspace{9cm}
\begin{solution}

This is the solution part
\vspace{9cm}
hello
\end{solution}
\question This is the 5th question
\vspace{9cm}%%%This works but only if I know that question 5 will be the first question that overflows to the next page. 
\begin{solution}

This is the solution part
\vspace{9cm}
hello
\end{solution}
\end{questions}
\end{document}

总之,我希望删除页面顶部的空间(如\vspace),但如果可能的话,作为解决方案环境中的选项。无论如何,我希望确保新页面顶部没有浪费的空间,无论它出现在哪个问题中。我想做到这一点而不在\vspace每个问题后面都放置一个,因为当我在解决方案之前有不需要的 vspace 时\printanswers。如果有更有效的方法来删除页面顶部不需要的空间,请告诉我。

\unstarredvspace另外,我正在使用 overleaf,但它似乎会导致在序言中放置错误。

答案1

放在 \unstarredvspace序言中。

==> 需要 exam.cls 2021/02/26 Version 2.7(此时 Overleaf 使用的是 2017/12/17 版本 2.603 并且会出现错误)。

\unstarredvspace 改变解决方案环境,以便什么时候 解决方案未打印,任何预留的可选空间都插入\vspace{amount}

使用您的代码(并使用第 5 个问题之后的任何其他空格\vspace{15cm}以避免任何猜测),您将获得五页和问题 3 和 4 之前的空间。

埃

使用的 \unstarredvspace输出有三页。现在问题 4 之前的空间只为问题 3 的解决方案保留,问题 3 和问题 5 从页面顶部开始。

F

这是代码。请注意,每个 之前都有一个空行\vspace{,用于产生空格。

\documentclass[11pt]{exam}
 %\printanswers 

 \unstarredvspace % added <<<<<<<<<<<<<<<<
 
\begin{document}
    \begin{questions}
        \question This is the first question
        \begin{solution}[20cm]
            
            This is the solution part
            
            \vspace{12cm}
            hello
        \end{solution}
        \question This is the 2nd question
        \begin{solution}[10cm]
            
            This is the solution part
            
            \vspace{9cm}
            hello
        \end{solution}
        
        \question This is the 3rd question
        \begin{solution}[14cm]
            
            This is the solution part
            
            \vspace{9cm}
            hello
        \end{solution}
        
        \question This is the 4th question%%%%see how there is space at the top of the page?
        \vspace{9cm}
        \begin{solution}[12cm]              
            This is the solution part
            
            \vspace{9cm}
            hello
        \end{solution}
        \question This is the 5th question
        \vspace{15cm}
        \begin{solution}            
            This is the solution part
            
            \vspace{9cm}
            hello
        \end{solution}
    \end{questions}
    \end{document}

相关内容