理想情况下,我会将文本和注释垂直对齐在页面底部,而不是minipage
,也不使用multirow
。
外柱应占用尽可能小的空间,中间柱应占用大部分空间。这就是我将其放在0.53\linewidht
那里的原因。
我需要能够将中间一列的句子分开,因为它们是项目符号,但仍然保持宽度。
以下 MWE 是我的三次尝试,我只想使用一种方法。
此代码:
\documentclass[12pt]{report}
\usepackage[utf8]{inputenc}
\usepackage[inline]{enumitem}
\usepackage{array}
\usepackage[bottom]{footmisc}
\usepackage[inline]{enumitem}
\usepackage{array}
\usepackage{booktabs}
\usepackage[flushleft]{threeparttable}
\usepackage{amsmath}
\usepackage{svg}
\usepackage{graphicx}
\usepackage{multirow}
\usepackage{makecell}
\usepackage{tabularx}
\usepackage[T1]{fontenc}
\usepackage{tcolorbox}%%%This is to make cool boxes
\usepackage{blindtext}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm]{geometry}
\usepackage[final]{microtype}
\begin{document}
\begin{table}[h]
\centering
\caption{On Data.}
\label{tab:data_section_dga}
\begin{tabular}{l p{0.53\textwidth} r}
\toprule
\textbf{Topic} & \textbf{Bullet points} & \textbf{Articles/Recitals} \\
\midrule
\makecell[l]{bla \\ bla} &
\makecell{
bla\footnote{bla} and bla\footnote{bla} \\
bla bla bla bla bla bla bla blabla bla bla blabla bla bla blabla bla bla bla\\
bla}
& Rec 3-4 \\
\multirow{3}{*}{bla} & bla bla bla \textit{bla}\footnote{bla} and \textit{bla}\footnote{bla}) & \multirow{3}{*}{Rec 3-4}\\
\addlinespace
& bla bla bla & \\
\addlinespace
& bla bla bla \\
\addlinespace
\makecell[l]{bla \\ bla} &
\begin{minipage}{0.53\textwidth}
bla bla bla
\textit{bla}\footnote{bla} and \textit{bla}\footnote{bla}
bla bla bla \\
bla bla bla \\
bla bla bla
\end{minipage} & bla \\
\end{tabular}
\end{table}
\end{document}
\makecell
不允许垂直对齐,而且我必须手动为长文本换行,这并不理想。multirow
垂直居中几乎完美,尽管我认为这是我的一个错误。并minipage
允许左侧的文本居中,但脚注在表格上。
你会怎么办?
答案1
我怀疑你正在寻找这样的事情:
- 对于表使用
tabularx
包 - 删除的是“minipage(页面底部)”
- 对于脚注使用成对的
\fotnotemark
-footnotetext
, - 用于垂直居中单元格内容的命令
\renewcommand\tabularxcolumn[1]{m{#1}}
\documentclass[12pt]{report}
%\usepackage[utf8]{inputenc}
\usepackage[inline]{enumitem}
\usepackage{array}
\usepackage[bottom]{footmisc}
%\usepackage[inline]{enumitem}
%\usepackage{array}
\usepackage{booktabs}
\usepackage[flushleft]{threeparttable}
\usepackage{amsmath}
\usepackage{svg}
\usepackage{graphicx}
\usepackage{multirow}
\usepackage{makecell}
\usepackage{tabularx}
\usepackage[T1]{fontenc}
\usepackage{tcolorbox}%%%This is to make cool boxes
\usepackage{blindtext}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm,
showframe]{geometry}
\usepackage[final]{microtype}
\usepackage{tcolorbox}%%%This is to make cool boxes
\begin{document}
\blindtext[2]
\begin{table}[ht]
\caption{On Data.}
\label{tab:data_section_dga}
\renewcommand\tabularxcolumn[1]{m{#1}}
\begin{tabularx}{\linewidth}{l X r}
\toprule
\textbf{Topic} & \textbf{Bullet points} & \textbf{Articles/Recitals} \\
\midrule
\makecell[l]{bla \\ bla}
& bla\footnotemark[1] and bla\footnotemark[2]
bla bla bla bla bla bla bla blabla bla bla blabla bla bla blabla bla bla bla
bla
& Rec 3-4 \\
\addlinespace
\multirow{3}{*}{bla}
& bla bla bla \textit{bla}\footnotemark[3] and \textit{bla}\footnotemark[4]
& \multirow{3}{*}{Rec 3-4}\\
%\addlinespace
& bla bla bla
& \\
%\addlinespace
& bla bla bla
& \\
\addlinespace
\makecell[l]{bla \\ bla}
& bla bla bla \textit{bla}\footnotemark[5] and \textit{bla}\footnotemark[6]
bla bla bla
& \\
\bottomrule
\end{tabularx}
\end{table}
\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}
\footnotetext{bla}
\blindtext
\end{document}
注意:不要加载两次包!
附录:
- 编辑你的问题和评论后,至少对我来说,你之后
- 所以,我再次猜测这应该是什么
- 现在我做如下修改:
- 在中间一列引入列表,
- 更改第一列和最后一列的设置,
- 删除单元格中的所有
multirow
指令\makecell
,
- 而是
p{...}
使用m{...}
列类型
\documentclass[12pt]{report}
\usepackage[a4paper,width=150mm,top=25mm,bottom=25mm,bindingoffset=6mm,
showframe]{geometry}
\usepackage[T1]{fontenc}
\usepackage[final]{microtype}
\usepackage[inline]{enumitem}
\usepackage{etoolbox}
\AtBeginEnvironment{table}{%
\setlist[itemize]{nosep,
leftmargin=*,
before=\begin{minipage}{\linewidth}\raggedright,
after=\end{minipage}
}
}% end of AtBeginEnvironment
\usepackage{booktabs, tabularx}
\usepackage{blindtext}
\begin{document}
\blindtext[2]
\begin{table}[ht]
\caption{On Data.}
\label{tab:data_section_dga}
\renewcommand\tabularxcolumn[1]{m{#1}}
\begin{tabularx}{\linewidth}{@{} m{2em} X >{\raggedright\arraybackslash}m{5em} @{}}
\toprule
\textbf{Topic} & \textbf{Bullet points} & \textbf{Articles/ Recitals} \\
\midrule
bla bla
& \begin{itemize}
\item bla\footnotemark[1] and bla\footnotemark[2]
\item bla bla bla bla bla bla bla blabla bla bla blabla bla bla blabla bla bla bla
\item bla
\end{itemize}
& Rec 3-4 \\
\addlinespace
bla
& \begin{itemize}
\item bla bla bla \textit{bla}\footnotemark[3] and \textit{bla}\footnotemark[4]
\item bla bla bla
\item bla bla bla
\end{itemize}
& Rec 3-4 \\
\addlinespace
bla bla
& \begin{itemize}
\item bla bla bla \textit{bla}\footnotemark[5] and \textit{bla}\footnotemark[6]
\item bla bla bla
\end{itemize}
& \\
\bottomrule
\end{tabularx}
\end{table}
\footnotetext[1]{bla}
\footnotetext[2]{bla}
\footnotetext[3]{bla}
\footnotetext[4]{bla}
\footnotetext[5]{bla}
\footnotetext[6]{bla}
\blindtext
\end{document}