我想制作一张适合 A4 纸宽度的简单答题纸。为了在列之间留出一些空间,我指定了每列的宽度,以便稍后写下答案,方便评分。
我的问题是:为什么第一列位于顶部,偏离了其他列的对齐方式?它稍微偏离了其他列。
\documentclass[12pt, oneside, A4paper,final,leqno]{article}
\usepackage{amsmath, amssymb, latexsym, amscd, amsthm}
\usepackage{enumerate}
\usepackage[left=1.5cm,top=1.84cm,right=1.8cm,bottom=1.469cm,bindingoffset=0.05cm]{geometry}
\usepackage[mathscr]{eucal}
\usepackage{graphics, graphpap}
\usepackage{pstricks}
\usepackage{pst-eps}
\usepackage{pst-fill}
\usepackage{pst-grad}
\usepackage{pst-node}
\usepackage{pst-plot}
\usepackage{pst-text}
\usepackage{pst-tree}
\usepackage{colortbl}
\usepackage{makeidx}
\makeindex
\usepackage{multicol,color}
\usepackage{indentfirst}
\renewcommand{\thefootnote}{}
\begin{document}
{\renewcommand{\arraystretch}{1.35752}
\bigskip
\begin{center}
\begin{tabular}{m{2.58cm}m{2.58cm}m{2.58cm}m{2.58cm}m{2.58cm}m{2.58cm}}\\
{\bf 1}\;\rule{1.362cm}{.4pt}&\;\;{\bf 6}\;\rule{1.362cm}{.4pt} &\;\;{\bf 11}\;\rule{1.362cm}{.4pt}&\;\;{\bf 16}\;\rule{1.362cm}{.4pt}&\;\;{\bf 21}\;\rule{1.362cm}{.4pt}&\;\;{\bf 26}\;\rule{1.362cm}{.4pt}\\
{\bf 2}\;\rule{1.362cm}{.4pt}&\;\;{\bf 7}\;\rule{1.362cm}{.4pt} &\;\;{\bf 12}\;\rule{1.362cm}{.4pt}&\;\;{\bf 17}\;\rule{1.362cm}{.4pt}&\;\;{\bf 22}\;\rule{1.362cm}{.4pt}&\;\;{\bf 27}\;\rule{1.362cm}{.4pt}\\
{\bf 3}\;\rule{1.362cm}{.4pt}&\;\;{\bf 8}\;\rule{1.362cm}{.4pt} &\;\;{\bf 13}\;\rule{1.362cm}{.4pt}&\;\;{\bf 18}\;\rule{1.362cm}{.4pt}&\;\;{\bf 23}\;\rule{1.362cm}{.4pt}&\;\;{\bf 28}\;\rule{1.362cm}{.4pt}\\
{\bf 4}\;\rule{1.362cm}{.4pt}&\;\;{\bf 9}\;\rule{1.362cm}{.4pt} &\;\;{\bf 14}\;\rule{1.362cm}{.4pt}&\;\;{\bf 19}\;\rule{1.362cm}{.4pt}&\;\;{\bf 24}\;\rule{1.362cm}{.4pt}&\;\;{\bf 29}\;\rule{1.362cm}{.4pt}\\
{\bf 5}\;\rule{1.362cm}{.4pt}&\;\;{\bf 10}\;\rule{1.362cm}{.4pt} &\;\;{\bf 15}\;\rule{1.362cm}{.4pt}&\;\;{\bf 20}\;\rule{1.362cm}{.4pt}&\;\;{\bf 25}\;\rule{1.362cm}{.4pt}&\;\;{\bf 30}\;\rule{1.362cm}{.4pt}
\end{tabular}
\end{center}
\end{document}
答案1
看起来您正在使用\;
来插入一定量的空格。该\;
指令通常专门用于数学模式。但有趣的是,您加载的许多包中的一个或多个允许在文本模式下使用此指令。但是,在文本模式下使用会产生一些不良副作用,您已经发现了其中之一。只需使用\;
进行全局搜索和替换,对齐问题就会消失。\;\;
$\;\;$
我忍不住发现您的表格中有许多重复的指令,而且您手动执行了大量格式化工作,而这些工作用 LaTeX 处理起来效率更高。下面是排版表格的另一种方法的建议;您会发现它只需要更少的指令即可。
\documentclass[12pt, oneside, A4paper,final,leqno]{article}
\usepackage[left=1.5cm,top=1.84cm,right=1.8cm,bottom=1.469cm,bindingoffset=0.05cm]{geometry}
\newcommand\myrule{$\;$\rule{1.362cm}{.4pt}}
\begin{document}
\begin{table}[h!]
\renewcommand{\arraystretch}{1.36} %% "1.35752" seems speciously accurate
\setlength\tabcolsep{0pt} % let LaTeX figure out the amount of inter-column whitespace
\begin{tabular*}{\textwidth}{l @{\extracolsep{\fill}} lllll}
\textbf{1}\myrule & \textbf{6}\myrule & \textbf{11}\myrule & \textbf{16}\myrule & \textbf{21}\myrule & \textbf{26}\myrule\\
\textbf{2}\myrule & \textbf{7}\myrule & \textbf{12}\myrule & \textbf{17}\myrule & \textbf{22}\myrule & \textbf{27}\myrule\\
\textbf{3}\myrule & \textbf{8}\myrule & \textbf{13}\myrule & \textbf{18}\myrule & \textbf{23}\myrule & \textbf{28}\myrule\\
\textbf{4}\myrule & \textbf{9}\myrule & \textbf{14}\myrule & \textbf{19}\myrule & \textbf{24}\myrule & \textbf{29}\myrule\\
\textbf{5}\myrule & \textbf{10}\myrule & \textbf{15}\myrule & \textbf{20}\myrule & \textbf{25}\myrule & \textbf{30}\myrule\\
\end{tabular*}
\end{table}
\end{document}
答案2
我不确定你的目的,但是你手动定义的列大小比内容更宽,这尤其显示在右侧。
只需使用r
列,也许增加列间空间,就像我下面做的那样。
\documentclass[12pt]{article}
\usepackage[left=1.5cm,top=1.84cm,right=1.8cm,bottom=1.469cm,bindingoffset=0.05cm,showframe]{geometry}
\usepackage{array}
\newcommand{\qrule}{~\rule{1.362cm}{.4pt}}
\begin{document}
\noindent
X\dotfill X
\begin{center}
\renewcommand{\arraystretch}{1.35752}
\addtolength{\tabcolsep}{3pt}
\begin{tabular}{@{}*{6}{r}@{}}
\textbf{1}\qrule&\textbf{6}\qrule &\textbf{11}\qrule&\textbf{16}\qrule&\textbf{21}\qrule&\textbf{26}\qrule\\
\textbf{2}\qrule&\textbf{7}\qrule &\textbf{12}\qrule&\textbf{17}\qrule&\textbf{22}\qrule&\textbf{27}\qrule\\
\textbf{3}\qrule&\textbf{8}\qrule &\textbf{13}\qrule&\textbf{18}\qrule&\textbf{23}\qrule&\textbf{28}\qrule\\
\textbf{4}\qrule&\textbf{9}\qrule &\textbf{14}\qrule&\textbf{19}\qrule&\textbf{24}\qrule&\textbf{29}\qrule\\
\textbf{5}\qrule&\textbf{10}\qrule &\textbf{15}\qrule&\textbf{20}\qrule&\textbf{25}\qrule&\textbf{30}\qrule
\end{tabular}
\end{center}
\end{document}
该showframe
选项仅用于显示类型块的边界。请注意,\qrule
该选项的定义可避免繁琐的输入,并允许快速更改宽度。我删除了全部 \;
命令。
@{}
还请注意删除两端列间空格的两条指令。