我想用 在居中表格标题中添加换行符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
,但自然宽度(由于内容被装箱,现在可以使用换行符\\
)较窄。