如果我想在表格中使用不同的字体大小,如何防止文本接触表格边框?为什么文本会接触表格边框?
\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
,这会在这些规则周围引入一些垂直填充。\bottomrule
booktabs
以下是这些解决方案的示例。您可以在软件包的文档中找到更多详细信息:
\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}