|
仅靠行来区分题目和选项,我不知道怎么弄,不过我想即使弄出来了也未必好用,因为这样的话题干就得一行写完,中间不能回车,这就不是很方便了。
所以我想还是在具体内容里插入一些标记来区分比较好做,下面我弄一个简单的例子。
主文件代码如下:- \documentclass{ctexart}
- \usepackage{enumitem}
- \input{xztkpb.tex}%选择填空排版设计
- \newcount\tmcount
- \newcommand\TMBT{%
- \ifnum\tmcount=1\relax
- \noindent 一、选择题。\begin{enumerate}
- \else\ifnum\tmcount=4\relax
- \end{enumerate}二、填空题。\begin{enumerate}[resume]
- \else\ifnum\tmcount=7\relax
- \end{enumerate}三、解答题。\begin{enumerate}[resume]
- \fi\fi\fi
- }
- \makeatletter
- \newcommand\ENDTM{\@ifstar{\end{enumerate}}{\TM}}
- \makeatletter
- \long\def\TM#1==={\global\advance\tmcount by1\relax
- \TMBT\item#1\ENDTM}
- \long\def\xz#1;#2;#3;#4;{\fkh\xx{#1}{#2}{#3}{#4}}
- \begin{document}
- \input{test.tex}
- \end{document}
复制代码 代码中读入了两个文件:
(1)xztkpb.tex 是我以前弄的选择填空排版设计,代码较长就贴附件好了:
xztkpb.tex
(1.64 KB, 下载次数: 1131)
(2)test.tex 就是题目内容,其格式如下:- \TM
- 选择一
- \xz 选项1;选项2;选项3;选项4;
- ===
- 选择二
- \xz 选项1;选项2;选项3;选项4;
- ===
- 选择三
- \xz 选项1;选项2;选项3;选项4;
- ===
- 填\tk 空一。
- ===
- 填\tk 空二。
- ===
- 填\tk 空三。
- ===
- 解答一
- ===
- 解答二
- ===
- 解答三
- ===*
复制代码 另外,这里我把前两部分设成了三题,你可以修改主文件的第9、11行的那两个数字来设置题数。
注意最后一题的 === 后面有个 * ,代表结束,这是必须要有的。
效果:
|
|