我想用
\usepackage[width=0.75\textwidth]{caption}
将标题的宽度调整为表格的宽度。但是,这会导致标题出现明显偏移。
如果没有上述设置:
\documentclass[a4paper]{article}
%% Sets page size and margins
\usepackage[a4paper,top=3cm,bottom=2cm,left=3cm,right=3cm,marginparwidth=1.75cm]{geometry}
%% set width of captions to width of table
%\usepackage[width=0.75\textwidth]{caption}
\begin{document}
\begin{table}[h]
\caption{\label{tab:tab}Bliblablubb, why does this have an offset I wonder? Bliblablubb, why does thi
\begin{tabular}{l|cccr}
\textbf{asdasd} & \textbf{cvbcvbce} & asdasdasdasds & sdsdsdsdsdsdsds& sdsdsdsdsdssd\\
\hline
asdf & & & & \\
& & & & \\
& & & & \\
& & & & \\
\hline
\end{tabular}
\end{table}
\end{document}
表格和标题如下所示:
如果我在该\usepackage[width=0.75\textwidth]{caption}
行中发表评论,它看起来像这样:
虽然标题的宽度合适,但偏移明显。我不明白这是为什么。
答案1
嗯,通常表格会根据可用的文本宽度居中。但你的情况是表格没有居中。
请参阅以下 MWE:
\documentclass[a4paper]{article}
\usepackage[%
a4paper,
top=3cm,bottom=2cm,left=3cm,right=3cm,
marginparwidth=1.75cm,
showframe % <=========================================================
]{geometry}
\usepackage[%
width=0.75\textwidth, % <=============================================
% margin={0cm,0cm}
]{caption}
\begin{document}
\begin{table}[h]
\caption{Bliblablubb, why does this have an offset I wonder? Bliblablubb, why does this happen?} % <=====
\label{tab:tab} % <===================================================
\centering % <========================================================
\begin{tabular}{l|cccr}
\textbf{asdasd} & \textbf{cvbcvbce} & asdasdasdasds & sdsdsdsdsdsdsds& sdsdsdsdsdssd\\
\hline
asdf & & & & \\
& & & & \\
& & & & \\
& & & & \\
\hline
\end{tabular}
\end{table}
\end{document}
及其结果:
正如您所看到的,我使用命令将表格居中\centering
,现在标题和表格具有相同的功能并且都居中。
如果你坚持要你的桌子不是居中,您必须使用选项margin={0cm,0.25\textwidth}
(将左边距设置为 0,右边距设置为0.25\textwidth
)width=0.75\textwidth
,以居中打印!
我个人更喜欢居中的表格和图形!
答案2
以下是使用 MWE 的三部分表。一切都排列整齐。我补充道大批并使用\extrarowheight
命令在规则和单元格内容之间添加一些空间,并使用 删除侧边距@{}
。我必须补充一点,您也可以使用\usepackage[margin={0mm, 35mm}]{caption}
。但是,使用 threeparttable,您无需猜测:
\documentclass[a4paper]{article}
%% Sets page size and margins
\usepackage[a4paper,top=3cm,bottom=2cm,left=3cm,right=3cm,marginparwidth=1.75cm]{geometry}
%% threeparttableset set width of captions to width of table
\usepackage{caption, threeparttable, array}
\setlength{\extrarowheight}{2pt}
\begin{document}
\begin{table}
\begin{threeparttable}
\caption{Bliblablubb, why does this have an offset I wonder? Bliblablubb, why does this\label{tab:tab}}
\begin{tabular}{@{}l|cccr@{}}
\textbf{asdasd} & \textbf{cvbcvbce} & asdasdasdasds & sdsdsdsdsdsdsds& sdsdsdsdsdssd\\
\hline
asdf & & & & \\
& & & & \\
& & & & \\
& & & & \\
\hline
\end{tabular}
\end{threeparttable}
\end{table}
\end{document}