我看到表格环境中列之间的默认间距是6pt
。在以下代码呈现的显示中,这样的列间距有点紧。我该如何使用\hskip
或\tabcolsep
将此默认值增加三倍?我该如何将行之间的垂直间距增加3pt
?
\documentclass{amsart}
\usepackage{mathtools,array}
\begin{document}
\noindent \textbf{8.) }Compute the following function values. \vskip1.25mm
\noindent \hphantom{\textbf{8.) }}\hspace*{1em}
\begin{tabular}{r@{\textbf{ }}lr@{\textbf{ }}l}
\textbf{a.)} & $\lfloor 1.1 \rfloor$ & \textbf{b.)} & $\lceil 1.1 \rceil$ \\
\textbf{c.)} & $\lfloor -0.1 \rfloor$ & \textbf{d.)} & $\lceil -0.1 \rceil$ \\
\textbf{e.)} & $\lceil 2.99 \rceil$ & \textbf{f.)} & $\lceil -2.99 \rceil$ \\
\textbf{g.)} & $\big\lfloor \frac{1}{2} + \lceil \frac{1}{2} \rceil \big\rfloor$
&
\textbf{h.)} & $\big\lceil \lfloor \frac{1}{2} \rfloor + \lceil \frac{1}{2} \rceil + \frac{1}{2} \big\rceil$
\end{tabular}
\end{document}
答案1
正如我在评论中指出的那样,对于水平部分使用\tabcolsep=3\tabcolsep
。对于垂直间距,您可以使用包\extrarowheight
中引入的间距array
。
\documentclass{amsart}
\usepackage{mathtools,array}
\begin{document}
\noindent \textbf{8.) }Compute the following function values. \vskip1.25mm
\noindent \hphantom{\textbf{8.) }}\hspace*{1em}
\bgroup\tabcolsep=3\tabcolsep
\extrarowheight=3pt
\begin{tabular}{r@{\textbf{ }}lr@{\textbf{ }}l}
\textbf{a.)} & $\lfloor 1.1 \rfloor$ & \textbf{b.)} & $\lceil 1.1 \rceil$ \\
\textbf{c.)} & $\lfloor -0.1 \rfloor$ & \textbf{d.)} & $\lceil -0.1 \rceil$ \\
\textbf{e.)} & $\lceil 2.99 \rceil$ & \textbf{f.)} & $\lceil -2.99 \rceil$ \\
\textbf{g.)} & $\big\lfloor \frac{1}{2} + \lceil \frac{1}{2} \rceil \big\rfloor$
&
\textbf{h.)} & $\big\lceil \lfloor \frac{1}{2} \rfloor + \lceil \frac{1}{2} \rceil + \frac{1}{2} \big\rceil$
\end{tabular}
\egroup
\end{document}
我将如何创建你的内容:
\documentclass{amsart}
\usepackage{mathtools,array}
\usepackage{enumitem}
\usepackage{multicol}
\multicolsep=1.25mm
\begin{document}
\begin{enumerate}[
,label=\textbf{\arabic*.)}
,itemsep=\bigskipamount
,align=left
,labelsep=1em
,labelwidth=1em
,labelindent=0pt
,leftmargin=!
]
\item Compute the following function values.
\begin{multicols}{2}
\begin{enumerate}[label=\textbf{\alph*)},itemsep=3pt]
\item $\lfloor 1.1 \rfloor$
\item $\lfloor -0.1 \rfloor$
\item $\lceil 2.99 \rceil$
\item $\big\lfloor \frac{1}{2} + \lceil \frac{1}{2} \rceil \big\rfloor$
\item $\lceil 1.1 \rceil$
\item $\lceil -0.1 \rceil$
\item $\lceil -2.99 \rceil$
\item $\big\lceil \lfloor \frac{1}{2} \rfloor + \lceil \frac{1}{2} \rceil + \frac{1}{2} \big\rceil$
\end{enumerate}
\end{multicols}
\item Draw a circle.
\item Rethink your choice to use a \texttt{tabular} environment.
\end{enumerate}
\end{document}
答案2
整理代码应该是一个重要的目标。下面定义了两种新的列类型:一种用于自动加粗,另一种用于自动数学模式。结果是环境中的代码更易读tabular
。
\documentclass{amsart}
\usepackage{array} % for "\newcolumntype" macro
\newcolumntype{L}{>{$}l<{$}} % automatic math mode
\newcolumntype{B}{>{\bfseries}l} % automatic bold face
\begin{document}
\noindent
\textbf{8.)} Compute the following function values.
\par\smallskip\noindent%
\begingroup\renewcommand{\arraystretch}{1.33} % less cramped look
\hspace*{1cm}
\begin{tabular}{@{}BL@{\qquad}BL@{}}
a.) & \lfloor 1.1 \rfloor & b.) & \lceil 1.1 \rceil \\
c.) & \lfloor -0.1 \rfloor & d.) & \lceil -0.1 \rceil \\
e.) & \lceil 2.99 \rceil & f.) & \lceil-2.99 \rceil \\
g.) & \bigl\lfloor \frac{1}{2} + \lceil \frac{1}{2} \rceil \bigr\rfloor &
h.) & \bigl\lceil \lfloor \frac{1}{2} \rfloor + \lceil \frac{1}{2} \rceil
+ \frac{1}{2} \bigr\rceil \\
\end{tabular}
\endgroup
\end{document}
答案3
我建议使用自定义enumerate
环境,借助enumitem
和tasks
水平列表的环境,而不是tabular
。这样,所有标签将自动计算和格式化,并且可以引用。
此外,我定义了一个\Floor
和a\Ceil
命令,它们可以在星号版本中调整大小。您可以在最后一项中看到它们的工作情况。
\documentclass{amsart}
\usepackage[utf8]{inputenc}
\usepackage{showframe}
\usepackage{enumitem}
\renewcommand{\ShowFrameLinethickness}{0.3pt}
\usepackage{tasks}
\usepackage{mathtools,array}
\DeclarePairedDelimiter{\Floor}{\lfloor}{\rfloor}
\DeclarePairedDelimiter{\Ceil}{\lceil}{\rceil}
\begin{document}
\begin{enumerate}[label = \arabic*.), font = \bfseries, start = 8, wide = 0pt, widest=\textbf{0.)},leftmargin =* ]
\item Compute the following function values. \vskip1.25mm%\
\begin{tasks}[counter-format = tsk[a].), label-format = \bfseries, label-width = 1.5em](3)%{r@{\textbf{ }}lr@{\textbf{ }}l}
\task $\lfloor 1.1 \rfloor$
\task $\lceil 1.1 \rceil$
\task $\lfloor -0.1 \rfloor$
\task $\lceil -0.1 \rceil$
\task $\lceil 2.99 \rceil$
\task $\lceil -2.99 \rceil$
\task $\bigl\lfloor \frac{1}{2} + \lceil \frac{1}{2} \rceil \bigr\rfloor$
\task $\Ceil*{\Floor*{ \frac{1}{2}} + \Ceil*{\frac{1}{2}} + \frac{1}{2}}$
\end{tasks}
\end{enumerate}
\end{document}