我使用的是 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}