第一列之间的行对齐不正确。第一列中的单元格从高一行开始。我使用 overleaf,并尝试在下面制作一个最小示例。
\documentclass{article}
\usepackage[utf8]{inputenc}
% Uncomment the next line to use the natbib package with bibtex
\usepackage{multirow}
\usepackage{adjustbox,lipsum}
\usepackage{array}
\usepackage{xcolor,colortbl,rotating,booktabs,bigstrut}
\usepackage{geometry}
\usepackage{pbox}
\begin{document}
\newgeometry{left=0.75cm,right=0.75cm,bottom=2cm}
% Table generated by Excel2LaTeX from sheet 'Sheet1'
\begin{table}[htbp]
\centering
\caption{Overview of effects of independent variables}
\resizebox{\columnwidth}{!}{%
\begin{tabular}{p{18.0em}|p{8em}|p{7.00em}|p{7.00em}}
\toprule
\multicolumn{1}{p{18em}|}{\pbox{7cm}{AP:some text \newline{} D: some text; some text}} & - Higher age & Increase foregone earnings & \multicolumn{1}{p{7.215em}|}{Increase study effort}
\midrule
\end{tabular}%
}
\label{tab:literaturereviewtable}%
\end{table}%
\restoregeometry
\end{document}
我得到的结果
我的问题是,文本没有在第一列和其他列中垂直对齐。
我希望你们中能有一位伟大的人可以帮助我。
最良好的问候
答案1
您在这里使用(不必要的)\pbox
来设置表格中的第一个条目,默认情况下它是垂直居中,因此后续条目的基线与第一个条目的中心对齐。
它们\multicolumn{1}
在这里没有帮助,只要移除它们就可以改善情况
\documentclass{article}
\usepackage[utf8]{inputenc}
% Uncomment the next line to use the natbib package with bibtex
\usepackage{multirow}
\usepackage{adjustbox,lipsum}
\usepackage{array}
\usepackage{xcolor,colortbl,rotating,booktabs,bigstrut}
\usepackage{geometry}
\usepackage{pbox}
\begin{document}
\newgeometry{left=0.75cm,right=0.75cm,bottom=2cm}
% Table generated by Excel2LaTeX from sheet 'Sheet1'
\begin{table}[htbp]
\centering
\caption{Overview of effects of independent variables}
% no please never scale tables \resizebox{\columnwidth}{!}{%
\begin{tabular}{>{\raggedright\arraybackslash}p{18.0em}|
>{\raggedright\arraybackslash}p{8em}|
>{\raggedright\arraybackslash}p{7.00em}|
>{\raggedright\arraybackslash}p{7.00em}}
\toprule
AP:some text \newline D: some text; some text & - Higher age & Increase foregone earnings & Increase study effort\\
\midrule
\end{tabular}%
% }
\label{tab:literaturereviewtable}%
\end{table}%
\restoregeometry
\end{document}
答案2
借助某些程序/插件将 Excel 表格转换为 LaTeX 表格很多时候都无法获得预期的结果。似乎在选择最适合转换表格的表格包方面存在限制,在转换后的表格中,在编写经常使用且杂乱的单元格方面也存在multicolumn{1} ...
限制\parbox
。
是的,直接在 LaTeX 中输入表格有点困难。如果一开始看起来很有挑战性,经过几次练习后,你很快就能掌握编写表格的技巧。回报是设计更好的表格,其中的代码清晰且大多更为简洁。
例如,你的表格可以通过使用新颖的表格包来简单编写tabularray
。表格的代码简单、清晰、简洁:
\documentclass{article}
\usepackage[utf8]{inputenc}
% Uncomment the next line to use the natbib package with bibtex
%\usepackage{}
%\usepackage{adjustbox}
%\usepackage{array, booktabs, multirow}
%\usepackage{xcolor,colortbl,rotating,bigstrut}
\usepackage{xcolor}
\usepackage{tabularray}
\UseTblrLibrary{booktabs}
\usepackage{geometry}
%\usepackage{pbox}
%---------------- Show page layout. Don't use in a real document!
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\newgeometry{left=0.75cm,right=0.75cm,bottom=2cm}
\begin{table}[htbp]
\centering
\caption{Overview of effects of independent variables}
\label{tab:literaturereviewtable}
\begin{tblr}{vlines,
colspec = {X[2.5, l] *{3}{X[1,l]} }
}
\toprule
{AP: some text\\
D: some text; some text} & - Higher age & Increase foregone earnings
& Increase study effort \\
\midrule
\end{tblr}
\end{table}%
\restoregeometry
\end{document}
(红线表示页面布局)
\enumitem
顺便说一句,我想知道,为什么你需要这么宽的表格。如果你要添加更实际(仍然是虚拟的)的表格内容,这里的人可能会给你额外的建议如何编写表格。例如,第二列中的内容是列表,如果对它们使用包会更好。