我有一个表格,其中所有元素都左对齐。以下是 MWE 代码及其输出:
\documentclass{article}
\begin{document}
\begin{table}
\begin{tabular}{lll}
\toprule
& $\alpha$ & $\beta$\\
\midrule
atomic $\text{C}$ & 1.1 & 2.2\\
($\text{C}_a$) & & \\ \addlinespace
polymeric $\text{C}$ & 3.3 & 4.4\\
($\text{C}_p$) & & \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
- 我想调整C在卡与C在“原子 C”中。
- 我还想调整C在陣容与C在“聚合物 C”中。
换句话说,缩进 C_a 和 C_b 以便它们与紧接上方的 C 对齐。
是否可以用相对简单的方法实现这一点?
(实际上,我正在使用这个chemmacros
包来排版C(例如\ch{C}
),但为了使我的 MWE 简单,我使用了。我认为这个问题的答案(如果存在的话)可能与我使用或\text
无关。)\ch
\text
答案1
这里有一个解决方案,它采用了包\mathllap
的宏mathtools
,它是包的超集amsmath
,以方便元素的对齐\ch{C}
。
\documentclass{article}
\usepackage{chemmacros,booktabs,mathtools}
\newcommand\myarray[2]{%
$\begin{array}[t]{@{}l@{}} #1 \\ \mathllap{(}#2) \end{array}$}
\begin{document}
\begin{table}
\centering
\begin{tabular}{@{}lcc@{}}
\toprule
& $\alpha$ & $\beta$\\
\midrule
atomic \myarray{\ch{C}}{\ch{C}_a} & 1.1 & 2.2\\
\addlinespace
polymeric \myarray{\ch{C}}{\ch{C}_p} & 3.3 & 4.4\\
\bottomrule
\end{tabular}
\end{table}
\end{document}
答案2
\widthof
以下是使用该calc
包来测量所需压痕的一种方法:
\documentclass{article}
\usepackage{booktabs}
\usepackage{chemmacros}
\usepackage{calc}
\newlength{\mylengthatomic}
\setlength{\mylengthatomic}{\widthof{atomic}-\widthof{(}}
\newlength{\mylengthpolymeric}
\setlength{\mylengthpolymeric}{\widthof{polymeric}-\widthof{(}}
\begin{document}
\begin{table}
\begin{tabular}{lll}
\toprule
& $\alpha$ & $\beta$\\
\midrule
atomic \ch{C} & 1.1 & 2.2\\
\hspace{\mylengthatomic} (\ch{C_a}) & & \\ \addlinespace
polymeric \ch{C} & 3.3 & 4.4\\
\hspace{\mylengthpolymeric} (\ch{C_p}) & & \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
第二个示例使用嵌套表格进行对齐:
\documentclass{article}
\usepackage{booktabs}
\usepackage{chemmacros}
\begin{table}
\begin{tabular}{lll}
\toprule
& $\alpha$ & $\beta$\\
\midrule
\setlength{\tabcolsep}{0pt}\begin{tabular}[t]{ll} atomic & \phantom{(}\ch{C} \\ & (\ch{C_a})\end{tabular} & 1.1 & 2.2\\ \addlinespace
\setlength{\tabcolsep}{0pt}\begin{tabular}[t]{ll} polymeric & \phantom{(}\ch{C} \\ & (\ch{C_p})\end{tabular} & 3.3 & 4.4\\
\bottomrule
\end{tabular}
\end{table}
\end{document}