![成绩单和期末成绩表](https://linux22.com/image/269132/%E6%88%90%E7%BB%A9%E5%8D%95%E5%92%8C%E6%9C%9F%E6%9C%AB%E6%88%90%E7%BB%A9%E8%A1%A8.png)
我正在尝试使用 Excellent 软件包构建考试exsheets
。我的问题出在最后一张表格上,即包含成绩的表格。不知何故,它似乎\hline
没有提供带线的完整表格,表格每条边缘的水平和垂直规则之间存在间隙(见下图)。
\documentclass[10pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{exsheets}
\SetupExSheets{solution/print=true}
\newcommand*{\TBD}{\textcolor{red}{To be defined!}}
\begin{document}
\begin{question}{2}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{1}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{2}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{3}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{2}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{tabular}{|l|*{\numberofquestions}{c|}c|}
\hline
Question & \ForEachQuestion{\QuestionNumber{#1}\iflastquestion{}{&}} & Total \\
\hline
Points & \ForEachQuestion{\GetQuestionProperty{points}{#1}\iflastquestion{}{&}} & \pointssum* \\
\hline
P.\ student & \ForEachQuestion{\iflastquestion{}{&}} & \\
\hline
\end{tabular}
\end{document}
答案1
您提到的问题与课程无关exsheets
;众所周知,在具有垂直和水平规则的标准 LaTeX 表中,会出现奇怪的角,因为水平规则结束于垂直规则的中间:
\documentclass{scrartcl}
\begin{document}
\begin{tabular}{|l|l|}
\hline
A & B \\
\hline
A & B \\
\hline
A & B \\
\hline
\end{tabular}
\end{document}
产生(放大 400%(更大的放大倍数可以更好地显示问题,但 400% 是我所知道的最大值)):
只需加载array
包即可解决问题:
\documentclass{scrartcl}
\usepackage{array}
\begin{document}
\begin{tabular}{|l|l|}
\hline
A & B \\
\hline
A & B \\
\hline
A & B \\
\hline
\end{tabular}
\end{document}
制作(放大 400%):
通过使用较大的 值可以更清楚地说明所提到的问题\arrayrulewidth
;比较一下没有 的奇怪结果array
:
\documentclass{scrartcl}
\begin{document}
\setlength\arrayrulewidth{7pt}
\begin{tabular}{|l|l|}
\hline
A & B \\
\hline
A & B \\
\hline
A & B \\
\hline
\end{tabular}
\end{document}
与使用array
:
\documentclass{scrartcl}
\usepackage{array}
\begin{document}
\setlength\arrayrulewidth{7pt}
\begin{tabular}{|l|l|}
\hline
A & B \\
\hline
A & B \\
\hline
A & B \\
\hline
\end{tabular}
\end{document}
顺便说一句(我相信你知道我会建议这个),你的表格如果没有垂直线,使用booktabs
包裹:
\documentclass[10pt,a4paper]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{exsheets}
\usepackage{booktabs}
\SetupExSheets{solution/print=true}
\newcommand*{\TBD}{\textcolor{red}{To be defined!}}
\begin{document}
\begin{question}{2}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{1}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{2}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{3}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{question}{2}
\TBD
\end{question}
\begin{solution}
\TBD
\end{solution}
\begin{tabular}{@{}l *{\numberofquestions}{c} c@{}}
\toprule
Question & \ForEachQuestion{\QuestionNumber{#1}\iflastquestion{}{&}} & Total \\
\cmidrule(r){1-1}\cmidrule(lr){2-6}\cmidrule(l){7-7}
Points & \ForEachQuestion{\GetQuestionProperty{points}{#1}\iflastquestion{}{&}} & \pointssum* \\
P.\ student & \ForEachQuestion{\iflastquestion{}{&}} & \\
\bottomrule
\end{tabular}
\end{document}