![表格内脚注的对齐问题](https://linux22.com/image/310959/%E8%A1%A8%E6%A0%BC%E5%86%85%E8%84%9A%E6%B3%A8%E7%9A%84%E5%AF%B9%E9%BD%90%E9%97%AE%E9%A2%98.png)
我对表格内的脚注有问题。我正在使用 pifont 包来生成点 ( \ding{108}
)。这些点应该对齐。这非常有效,直到我添加超过 9 个脚注。然后点不再居中,因为包括脚注编号在内的整个表达式都居中。这会导致脚注编号为 10 或更高的点向左移动。
下面显示了一个 MWE。我使用的原因threeparttable
未在 MWE 中显示。但是,对于 MWE 中省略的表格中的其他内容,它是必要的。有人知道如何将脚注排除在居中之外或有解决方法吗?
\documentclass[a4paper]{report}
\usepackage{threeparttable}
\usepackage{pifont}
\usepackage{footnote}
\begin{document}
Previous 1\footnote{bla1}\\
Previous 2\footnote{bla2}\\
Previous 3\footnote{bla3}\\
Previous 4\footnote{bla4}\\
Previous 5\footnote{bla5}\\
Previous 6\footnote{bla6}\\
Previous 7\footnote{bla7}\\
Previous 8\footnote{bla8}\\
\begin{savenotes}
\begin{threeparttable}
\begin{tabular}{lc}
\textbf{blabalabaa} & \textbf{blabalabal} \\ \hline\hline
First item & \ding{108}\footnote{bla9} \\
Second item & \ding{108}\footnote{bla10} \\
\end{tabular}
\end{threeparttable}
\end{savenotes}
\end{document}
答案1
如果脚注始终是表格条目中的最后一个内容,那么这种方法就有效。这样,正如我的 MWE 所示,即使有些行没有脚注,这种方法也能奏效。
编辑后采纳了 Bernard 的建议,使用\rlap{}
代替\makebox[0pt][l]{}
零宽度情况。
\documentclass[a4paper]{report}
\usepackage{threeparttable}
\usepackage{pifont}
\usepackage{footnote}
\begin{document}
Previous 1\footnote{bla1}\\
Previous 2\footnote{bla2}\\
Previous 3\footnote{bla3}\\
Previous 4\footnote{bla4}\\
Previous 5\footnote{bla5}\\
Previous 6\footnote{bla6}\\
Previous 7\footnote{bla7}\\
Previous 8\footnote{bla8}\\
\begin{savenotes}
\begin{threeparttable}
\begin{tabular}{lc}
\textbf{blabalabaa} & \textbf{blabalabal} \\ \hline\hline
Zeroeth item & \ding{108}
\\
First item & \ding{108}\rlap{\footnote{bla9}} \\
Second item & \ding{108}\rlap{\footnote{bla10}} \\
\end{tabular}
\end{threeparttable}
\end{savenotes}
\end{document}
如果表格单元格中脚注后面还有更多内容,则可以使用,例如,\makebox[8pt][l]{\footnote{bla9}}
以便所有tabular
脚注都占据相等的宽度。如果某些行包含或不包含脚注,则需要使用这种有限宽度方法提供更多规定。