考虑一下表格
由以下代码生成:
\usepackage{amsmath}
\begin{document}
\begin{table}[]
{\renewcommand{\arraystretch}{2}
\begin{tabular}{ccc} \hline
& text & text \\ \hline
text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \hline
\end{tabular}
}
\end{table}
\end{document}
如您所见,\dfrac{1}{x}
表格中的间距太紧。如何设置垂直间距,并确保所有文本和公式都垂直居中对齐?
答案1
我可以想到两种不同的解决方案:
不要使用
\hline
和\cline
和,而是切换到规则绘制指令书签包裹。在需要的地方插入排版支柱。例如,
\mathstrut
根据需要在上标和下标位置使用指令。
\documentclass{article} % or some other suitable document class
\usepackage{amsmath} % for '\dfrac' macro
\usepackage{booktabs} % for '\toprule', `\midrule`, `\bottomrule`, and `\cmidrule` directives
\begin{document}
\begin{table}[ht]
\begin{tabular}[t]{ccc}
\hline
& text & text \\ \hline
text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \hline
\end{tabular}
\qquad
\begin{tabular}[t]{ccc} \toprule
& text & text \\ \midrule
text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \bottomrule
\end{tabular}
\qquad
\begin{tabular}[t]{ccc} \hline
& text & text \\ \hline
text & $\dfrac{1^{\mathstrut}}{x}$ & $\dfrac{1}{x_{\mathstrut}}$ \\ \hline
\end{tabular}
\end{table}
\end{document}
答案2
该包提供了处理此类问题的nicematrix
关键(当然,您必须使用而不是)。cell-space-limits
{NiceTabular}
{tabular}
\documentclass{article}
\usepackage{nicematrix}
\NiceMatrixOptions{cell-space-limits=2pt}
\begin{document}
\begin{table}[]
\renewcommand{\arraystretch}{2}
\begin{NiceTabular}{ccc} \hline
& text & text \\ \hline
text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \hline
\end{NiceTabular}
\end{table}
\end{document}
当然,如果没有\renewcommand{\arraystretch}{2}
和工具,输出可能会更好booktabs
。
\documentclass{article}
\usepackage{nicematrix,booktabs}
\NiceMatrixOptions{cell-space-limits=2pt}
\begin{document}
\begin{table}[]
\begin{NiceTabular}{ccc} \toprule
& text & text \\ \midrule
text & $\dfrac{1}{x}$ & $\dfrac{1}{x}$ \\ \bottomrule
\end{NiceTabular}
\end{table}
\end{document}