我现在的填空题答案是放在 \uline 里,以便加下画线。我想能不能在打印卷子的时候,不显示答案,只显示下画线。
我们可以手工加一个判断,如下代码查看:
\documentclass{ctexart}
\newif\ifprint
\printfalse
\usepackage{ulem}
\newcommand{\blank}[2][3cm]{\uline{\makebox[#1][c]{%
\ifprint
\phantom{#2}%
\else
#2%
\fi}}}
\begin{document}
\blank{答案}
\blank[5cm]{很长的答案}
\end{document}
第三行 \printfalse 就打印出答案,\printtrue 就隐藏答案。
更高级的方案也可以用 key-value 来做,有兴趣你可以看看相关宏包。
最新版本(2014/12/26 v3.3.0)的 xeCJKfntef 扩展了下划线的设置方式,可以启用 hidden 选项,只画线,不显示文字。
线的长度等于答案的长度,会暴露一点信息。并且可以在下划线中折行,这对于填空题来说,可能不好看。
\documentclass{ctexart}
\usepackage{xeCJKfntef}[2014/12/26 v3.3.0]
\newcommand*\blank{\CJKunderline[hidden=true, skip=false, thickness=1pt]}
\begin{document}
\begin{enumerate}
\item 中国的首都是\blank{北京},宇宙的中心在\blank{五道口}。
\item 我们的网站名字是\blank{\LaTeX Studio},淘宝地址是\blank{latexstudio.taobao.com}。
\end{enumerate}
\end{document}
线的长度等于答案的长度,会暴露一点信息。并且可以在下划线中折行,这对于填空题来说,可能不好看。


发表评论 取消回复