使用投影仪在表格标题中换行

使用投影仪在表格标题中换行

我想用 在居中表格标题中添加换行符beamer。我似乎想不通。以下是示例代码:

\documentclass[xcolor=pdftex,svgnames,table]{beamer}
\setbeamertemplate{caption}[numbered]
\setbeamerfont{caption}{size=\scriptsize}
\usepackage{amsmath,amsthm, amssymb, latexsym}
\usetheme{Boadilla}

\begin{document}

\begin{frame}
\begin{table}
      \begin{tabular}{|c c|}\hline
      a & b  \\
      \hline
      1 & 2 \\
      \hline
      \end{tabular}
      \vspace{3mm}
      \caption{I would like to put a break \newline here in the caption.}
\end{table}
\end{frame}

\end{document}

这不起作用(除非标题延伸整个页面,在这种情况下它会左对齐,但这不是我想要的)。\\产生错误。

如果我尝试加载caption包,我会收到此错误

! LaTeX Error: \@makecaption undefined.

即使我删除了beamer标题模板,也会发生这种情况。

答案1

我会使用固定宽度的[t]op-aligned \parbox。例如,使用

\caption{\parbox[t]{4cm}{I would like to put a break here in the caption.}}

在您的 MWE 中产生

在此处输入图片描述

[t]如果你使用op-aligned ,情况也是如此tabular

\caption{%
  \begin{tabular}[t]{@{}l}
  I would like to put a break here \\ in the caption.
  \end{tabular}}

在中\parbox指定宽度,在中tabular指定换行符。

最后,varwidth包裹如果盒子的内容比指定的宽度窄,它将缩小到盒子的自然宽度:

\usepackage{varwidth}% http://ctan.org/pkg/varwidth
%...
\caption{%
  \begin{varwidth}[t]{10cm}
  I would like to put a break here \\ in the caption.
  \end{varwidth}}

尽管我已经指定了10cm,但自然宽度(由于内容被装箱,现在可以使用换行符\\)较窄。

相关内容