diff options
author | Karl Berry <karl@freefriends.org> | 2018-11-21 21:59:30 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2018-11-21 21:59:30 +0000 |
commit | 228e5563a08cef3526d4f4a9b744ce328d243797 (patch) | |
tree | d59ba53751f7b2d4c569fa2cc30d8868e7cdda38 /Master/texmf-dist/doc/latex/jnuexam/jnuexam.tex | |
parent | 9e976587f069902490e28823c0fb71edfb087d0f (diff) |
jnuexam (21nov18)
git-svn-id: svn://tug.org/texlive/trunk@49212 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/latex/jnuexam/jnuexam.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/jnuexam/jnuexam.tex | 125 |
1 files changed, 92 insertions, 33 deletions
diff --git a/Master/texmf-dist/doc/latex/jnuexam/jnuexam.tex b/Master/texmf-dist/doc/latex/jnuexam/jnuexam.tex index 35bdcafe375..f41fb784f6c 100644 --- a/Master/texmf-dist/doc/latex/jnuexam/jnuexam.tex +++ b/Master/texmf-dist/doc/latex/jnuexam/jnuexam.tex @@ -9,8 +9,23 @@ \usepackage{listings} \usepackage{tabu} -\setCJKsansfont{SimHei} -\setCJKmonofont{SimHei} +\makeatletter + +\providecommand{\beamer@endinputifotherversion}[1]{} + +\ifxetex + \setCJKsansfont{SimHei} % fix for ctex 2.0 + \setCJKmonofont{SimHei} + \renewcommand\CJKfamilydefault{\CJKsfdefault}% +\else + \@ifpackagelater{ctex}{2014/03/01}{}{\AtBeginDocument{\heiti}} %无效? +\fi + +\makeatother + +\renewcommand{\baselinestretch}{1} % ctex 2.4.1 开始为 1,之前为 1.3 +\renewcommand{\arraystretch}{1.3} + \setlength{\parskip}{7pt plus 1pt minus 1pt} \justifying @@ -21,6 +36,8 @@ basicstyle=\ttfamily\color{blue!50!red} } +\lstnewenvironment{code}{}{} + \setbeamersize{text margin left=8mm,text margin right=8mm} \newenvironment{framex}{\begin{frame}[fragile=singleslide,environment=framex]}{\end{frame}} @@ -63,7 +80,7 @@ 这个模板将格式和内容分开,而且可以从一份 \verb!tex! 文件编译出四份试卷(A卷 / B卷 / A卷答案 / B卷答案),使用方便。 \par 这个模板的最新版本可以在下面地址下载:\newline - \url{https://lvjr.bitbucket.io/jnuexam.html} + \href{https://lvjr.bitbucket.io/jnuexam.html?\the\year}{https://lvjr.bitbucket.io/jnuexam.html} \end{framex} \begin{framex} @@ -79,7 +96,7 @@ \begin{framex} \frametitle{试卷结构} -\begin{lstlisting} +\begin{code} \documentclass{jnuexam} \begin{document} ...... @@ -96,12 +113,12 @@ \makedata{可能用到的数据} %附录数据 ...... \end{document} -\end{lstlisting} +\end{code} \end{framex} \begin{framex} \frametitle{试卷表头} -\begin{lstlisting} +\begin{code} \renewcommand{\niandu}{2010--2011} \renewcommand{\xueqi}{2} \renewcommand{\kecheng}{大学数学} @@ -114,13 +131,13 @@ \renewcommand{\neizhao}{1} % 1打勾,0不勾 \renewcommand{\waizhao}{0} % 1打勾,0不勾 \makehead %生成试卷表头 -\end{lstlisting} +\end{code} 其中 \verb!\zhuanye! 和 \verb!\shijian! 命令的内容可以为空。 \end{framex} \begin{framex} \frametitle{填空题目} -\begin{lstlisting} +\begin{code} \makepart{填空题}{题数分值} \begin{problem} @@ -130,7 +147,7 @@ \begin{problem} 第二道填空题描述\fillout{答案}。 \end{problem} -\end{lstlisting} +\end{code} \verb!\fillout! 命令将用下划线填满整行。另有个 \verb!\fillin! 命令,只留下最小宽度的下划线。 \par 答案必须放在 \verb!\fillout! 或 \verb!\fillin! 命令里面;这样才能在生成空白试卷时隐藏它。 @@ -138,7 +155,7 @@ \begin{framex} \frametitle{选择题目} -\begin{lstlisting} +\begin{code} \makepart{单选题}{题数分值} \begin{problem} @@ -148,15 +165,44 @@ \begin{problem} 第二道单选题描述\pickout{答案}。 \end{problem} -\end{lstlisting} +\end{code} \verb!\pickout! 命令将把选择圆括号放在本行最右边。另外有个 \verb!\pickin! 命令,将选择圆括号放在当前位置。 \par 答案必须放在 \verb!\pickout! 或 \verb!\pickin! 命令里面;这样才能在生成空白试卷时隐藏它。 \end{framex} \begin{framex} +\frametitle{选项排版} +选择题的四个选项可以用 \verb!abcd! 环境来排版。比如: +\begin{code} +\begin{abcd} + \item 第一个选项 + \item 第二个选项 + \item 第三个选项 + \item 第四个选项 +\end{abcd} +\end{code} +此时 \verb!abcd! 环境将根据各选项长度自动将四个选项分为一行、两行或四行排版,非常方便。 +\end{framex} + + +\begin{framex} +\frametitle{答题表格} +在填空题和选择题前面,还可以用 \verb!\answertable! 命令生成空白答题栏。比如: +\begin{code} +\answertable[3em]{6}{3} +\end{code} +其中 \verb!\answertable! 命令的三个参数含义如下: +\begin{itemize} + \item 第一个可选参数表示空白单元格的高度,默认是 \verb!1em!。 + \item 第二个必选参数表示总共有多少个题目。 + \item 第三个必选参数表示每行排版几个题目。 +\end{itemize} +\end{framex} + +\begin{framex} \frametitle{计算题目} -\begin{lstlisting} +\begin{code} \makepart{计算题}{题数分值} \begin{problem} @@ -172,34 +218,47 @@ \begin{solution} 第二道计算题答案。 \end{solution} -\end{lstlisting} +\end{code} \end{framex} \begin{framex} \frametitle{证明题目} -\begin{lstlisting} +\begin{code} \makepart{证明题}{题数分值} \begin{problem} 第一道证明题描述。 \end{problem} -\begin{proof} +\begin{solution} 第一道证明题答案。 -\end{proof} +\end{solution} \begin{problem} 第二道证明题描述。 \end{problem} -\begin{proof} +\begin{solution} 第二道证明题答案。 -\end{proof} -\end{lstlisting} +\end{solution} +\end{code} +\end{framex} + +\begin{framex} +\frametitle{评分命令} +计算题和证明题等主观题的排版方法是完全一样的。在编写这些主观题的解答时, +可以用 \verb!\score! 命令给出各步骤得分。比如: +\begin{code} +\begin{solution} +$1+1=2$ \score{4} +$2+2=4$ \score{8} +\end{solution} +\end{code} +评分命令 \verb!\score! 也可在 \verb!align*! 等数学环境中使用,此时评分显示在公式编号位置。 \end{framex} \begin{framex} \frametitle{其它题型} 除了上述四种题型之外,其它题型可以用下面方式编写: -\begin{lstlisting} +\begin{code} \makepart{某题型}{题数分值} \begin{problem} @@ -209,17 +268,17 @@ \begin{problem} 第二题描述。\answer{第二题答案} \end{problem} -\end{lstlisting} +\end{code} 其中题目答案必须放在 \verb!\answer! 命令里面;这样才能在生成空白试卷时隐藏它。 \end{framex} \begin{framex} \frametitle{附录数据} 在试卷最后,可以用下面命令增加附录数据部分: -\begin{lstlisting} +\begin{code} \makedata{可能用到的数据} %附录数据 ...... -\end{lstlisting} +\end{code} 附录数据必须放在 \verb!\makedata! 命令后面;否则在从A卷生成B卷时会出问题。 \end{framex} @@ -227,10 +286,10 @@ \frametitle{空白试卷} 假设 \verb!exam-a.tex! 是含答案的试卷。新建一个包含以下内容的 \verb!exam-a-empty.tex! 文档, 编译后将得到不含答案的空白试卷。 -\begin{lstlisting} +\begin{code} \PassOptionsToClass{noanswer}{jnuexam} \input{exam-a} -\end{lstlisting} +\end{code} 也就是说,给 \verb!jnuexam! 文档类加上 \verb!noanswer! 选项后,编译时将会自动隐藏试卷答案。 \end{framex} @@ -238,10 +297,10 @@ \frametitle{逆序出题} 假设 \verb!exam-a.tex! 是含答案的A卷。新建一个包含以下内容的 \verb!exam-b.tex! 文档, 编译后将得到逆序出题的B卷。 -\begin{lstlisting} +\begin{code} \PassOptionsToClass{reverse}{jnuexam} \input{exam-a} -\end{lstlisting} +\end{code} 也就是说,给 \verb!jnuexam! 文档类加上 \verb!reverse! 选项后,编译时将会逆序排列各题型的小题。 \end{framex} @@ -285,7 +344,7 @@ \begin{framex} \frametitle{分页例子} 关于分页命令的使用,可以看下面的典型例子: -\begin{lstlisting} +\begin{code} \makepart{某题型}{题型分值} \newpageb \begin{problem}第一题\end{problem}\vfill @@ -294,15 +353,15 @@ \begin{problem}第三题\end{problem}\vfill \begin{problem}第四题\end{problem}\vfill \newpagea -\end{lstlisting} +\end{code} 这样编译得到的A卷就是这样的顺序: -\begin{lstlisting} +\begin{code} 第一题 第二题 分页 第三题 第四题 分页 -\end{lstlisting} +\end{code} 而编译得到的B卷就是这样的顺序: -\begin{lstlisting} +\begin{code} 第四题 第三题 分页 第二题 第一题 分页 -\end{lstlisting} +\end{code} \end{framex} \end{document} |