Longtable - 标题太短

Longtable - 标题太短

我使用的是 longtable。但是标题太短,以至于它将我的 12 个字的标题分成两行居中,只有表格宽度的 1/3。

我想在一行中显示标题。有什么建议吗?以下是我的代码:

\documentclass[a4paper,12pt]{article}
\usepackage{longtable} 
\usepackage{pdflscape} 
\usepackage{graphicx}

\begin{document}
\begin{landscape}
\setlength\LTleft{-40pt}           
\setlength\LTright{-40pt}           
\begin{longtable}{@{\extracolsep{\fill}}llllllllll@{}}
\caption{Why My Caption is Squeezed Here Can I Make The Length Longer?}\\
\hline\hline
Short Name & Full Name  & Source                                     \\
\hline
\\
\hline
\end{longtable}
\end{landscape}
\end{document}

答案1

添加

\setlength\LTcapwidth{\linewidth}

\LTleft到您的代码中,在设置和之后(或之前)\LTright

背景:与常规相反,\caption背景longtable受宽度限制\LTcapwidth。在纵向模式下使用时,默认值非常合理,但在横向模式下太短。

完整示例文档:

\documentclass[a4paper,12pt]{article}
\usepackage{longtable} 
\usepackage{pdflscape} 
\usepackage{graphicx}

\begin{document}
\begin{landscape}
\setlength\LTleft{-40pt}    
\setlength\LTright{-40pt}           
\setlength\LTcapwidth{\linewidth}
\begin{longtable}{@{\extracolsep{\fill}}llllllllll@{}}
\caption{Why My Caption is Squeezed Here Can I Make The Length Longer?}\\
\hline\hline
Short Name & Full Name  & Source                                     \\
\hline
\\
\hline
\end{longtable}
\end{landscape}
\end{document}

不要脸地自我宣传:添加\usepackage{caption}也可以解决这个问题,因为它会忽略\LTcapwidth(除非设置为特定值)。

答案2

使用\caption包并将以下行添加到你的序言中:

\usepackage{caption}
\captionsetup[table]{labelfont=bf,textfont=normalfont,singlelinecheck=on,justification=raggedright}

相关内容