\表格中的大文本触及表格边框

\表格中的大文本触及表格边框

如果我想在表格中使用不同的字体大小,如何防止文本接触表格边框?为什么文本会接触表格边框?

\documentclass{article}

\pagestyle{empty}

\newcommand{\mycoordinates}
{
\vspace{0.2cm}
\begin{tabular}{|c|l|} \hline
\Huge Point & \Huge Original \(\rightarrow\) Transformed \\ \hline 
\Huge A & \\ \hline
B & \\ \hline
C & \\ \hline
\end{tabular}
}

\begin{document}

\mycoordinates

\end{document}

在此处输入图片描述

答案1

LaTeX 表格通常非常紧凑。您可以随意尝试,\arraystretch但在这种情况下(不同行的字体大小不同),可能不太容易。

有两个软件包可以解决这个问题,但是每个软件包都有各自的局限性:

  • cellspace定义最小单元格内容与上一行或下一行之间的距离。您所要做的就是定义这些最小距离,并在相关列说明符前加上字母前缀S(或C如果您使用siunitx)。
  • makecell添加单元格顶部和底部的垂直间距。您必须设置此间距,然后使用命令\makegapedcells

另一个解决方案是放弃所有垂直规则,以获得更专业的表格,并替换\hline\s and\cline s with the\toprule, \midrule和来自的命令\cmidrule,这会在这些规则周围引入一些垂直填充。\bottomrulebooktabs

以下是这些解决方案的示例。您可以在软件包的文档中找到更多详细信息:

\documentclass{article}
\usepackage{cellspace} 
\setlength\cellspacetoplimit{5pt}
\setlength\cellspacebottomlimit{5pt}
\usepackage{makecell} 
\setcellgapes{5pt}
\usepackage{booktabs} 

\pagestyle{empty}

\newcommand{\mycoordinates}
{
\vspace{0.2cm}
\begin{tabular}{|Sc|Sl|} \hline
\Huge Point & \Huge Original \(\rightarrow\) Transformed \\ \hline
\Huge A & \\ \hline
B & \\ \hline
C & \\ \hline
\end{tabular}
}

\begin{document}

\mycoordinates
\vskip 1cm

{\makegapedcells
\begin{tabular}{|c|l|} \hline
\Huge Point & \Huge Original \(\rightarrow\) Transformed \\ \hline
\Huge A & \\ \hline
B & \\ \hline
C & \\ \hline
\end{tabular}}
\vskip 1cm

\begin{tabular}{cl} \toprule
\Huge Point & \Huge Original \(\rightarrow\) Transformed \\ 
\midrule
\Huge A & \\ 
\midrule
B & \\ 
\midrule
C & \\ 
\bottomrule
\end{tabular}

\end{document} 

在此处输入图片描述

答案2

LaTeX 使用\strut来设置单元格的高度;但是是\strut在启动表格之前计算的。

只需\strut在后面添加一个\Huge(出现的行中的一个单元格\Huge就足够了)。

\documentclass{article}

\pagestyle{empty}

\begin{document}

\begin{tabular}{|c|l|} \hline
\Huge \strut Point & \Huge Original \(\rightarrow\) Transformed \\ \hline
\Huge \strut A & \\ \hline
B & \\ \hline
C & \\ \hline
\end{tabular}

\end{document}

在此处输入图片描述

答案3

设置表格\Huge并在需要的地方使用较小的文本可能是最简单的方法。(选项(b))

在此处输入图片描述

\documentclass{article}
\usepackage{array}
\pagestyle{empty}

\newcommand{\mycoordinates}
{\par
\vspace{0.2cm}
\begin{tabular}{|c|l|} \hline
\Huge Point & \Huge Original \(\rightarrow\) Transformed \\ \hline 
\Huge A & \\ \hline
B & \\ \hline
C & \\ \hline
\end{tabular}%%
}
\newcommand{\mycoordinatesb}
{{\par\Huge
\vspace{0.2cm}
\begin{tabular}{|c|l|} \hline
Point &  Original \(\rightarrow\) Transformed \\ \hline 
 A & \\ \hline
\normalsize B & \\ \hline
\normalsize C & \\ \hline
\end{tabular}%%
}}
\newcommand{\mycoordinatesc}
{{\setlength\extrarowheight{17pt}\par
\vspace{0.2cm}
\begin{tabular}{|c|l|} \hline
\Huge Point & \Huge Original \(\rightarrow\) Transformed \\ \hline 
\Huge A & \\ \hline
B & \\ \hline
C & \\ \hline
\end{tabular}%%
}}
\newcommand{\mycoordinatesd}
{{\renewcommand\arraystretch{2.5}\par
\vspace{0.2cm}
\begin{tabular}{|c|l|} \hline
\Huge Point & \Huge Original \(\rightarrow\) Transformed \\ \hline 
\Huge A & \\ \hline
B & \\ \hline
C & \\ \hline
\end{tabular}%%
}}


\begin{document}

\mycoordinates
\mycoordinatesb
\mycoordinatesc
\mycoordinatesd

\end{document}

相关内容