我正在使用 beamer 类进行演示。我正在使用 minipage 获取 2x2 排列的 4 个图形。
当我给图片添加标题时出现了两个问题:
- 标题从图上开始,而不是从下方开始
- 图形的尺寸不会减小,但标题会被图形剪切。
- 我还收到错误:“\caption 在图形或表格之外。\end{frame}”
\documentclass{beamer} \usetheme{default} \setbeamerfont{caption}{size=\footnotesize} \begin{document} \begin{frame} \begin{columns} \column{0.5\textwidth} \begin{minipage}[c][0.4\textheight][c]{\linewidth} \centering \includegraphics[width=1\linewidth]{ETRM1042-epspdf-to} \caption{WT terminal voltage} \end{minipage} \begin{minipage}[c][0.4\textheight][c]{\linewidth} \centering \includegraphics[width=1\linewidth]{ITRM1042-epspdf-to} \caption{WT terminal current} \end{minipage} \column{0.5\textwidth} \begin{minipage}[c][0.4\textheight][c]{\linewidth} \centering \includegraphics[width=1\linewidth]{ETRM1042-epspdf-to} \caption{Caption 3} \end{minipage} \begin{minipage}[c][0.4\textheight][c]{\linewidth} \centering \includegraphics[width=1\linewidth]{VAACC-epspdf-to} \caption{previous Vterm angle} \end{minipage} \end{columns} \end{frame} \end{document}
答案1
采用下列方法可以减少复杂性:
\documentclass{beamer}
\usepackage{graphicx}
\usepackage{tabularx}
\begin{document}
\begin{figure}
\begin{frame}
\begin{tabularx}{\textwidth}{*{2}{>{\centering\arraybackslash}X}}
\includegraphics[width=0.9\linewidth,height=24mm]{example-image-a}
\caption{WT terminal voltage}
& \includegraphics[width=\linewidth,height=24mm]{example-image-a}
\caption{???}
\\ % new row
\includegraphics[width=0.9\linewidth,height=24mm]{example-image-b}
\caption{WT terminal current}
& \includegraphics[width=\linewidth,height=24mm]{example-image-b}
\caption{previous Vterm angle}
\end{tabularx}
\end{figure}
\end{frame}
\end{document}
当然,为了看到标题,您的图像显示需要适当限制其高度。
编辑:
要有编号标题,您需要添加序言\setbeamertemplate{caption}[numbered]
。
附录:
正如评论中所问,没有“图”字的“标题”很容易获得——只是没有使用\caption{...}
:-)。下面的 MWE 演示了可能的解决方案。
\documentclass{beamer}
\usetheme{default}
%----
\usepackage{graphicx}
\usepackage{tabularx}
\begin{document}
\begin{frame}
\begin{tabularx}{\textwidth}{*{2}{>{\centering\arraybackslash}X}}
\includegraphics[width=0.9\linewidth,height=24mm]{example-image-a}\newline\footnotesize
WT terminal voltage
& \includegraphics[width=\linewidth,height=24mm]{example-image-a}\newline\footnotesize
???
\\[1em] % new row
\includegraphics[width=0.9\linewidth,height=24mm]{example-image-b}\newline\footnotesize
WT terminal current
& \includegraphics[width=\linewidth,height=24mm]{example-image-b}\newline\footnotesize
previous Vterm angle
\end{tabularx}
\end{frame}
\end{document}
这使:
答案2
如果我运行你的例子我得到
! LaTeX Error: \caption outside figure or table.
如果出现错误,那么实际上根本不值得查看 pdf 输出,teX 会尝试恢复以对文件进行更多错误检查,但不会生成合理的输出。
如果我添加表格,因为错误表明输出对我来说看起来正常:
\documentclass{beamer}
\usetheme{default}
\setbeamerfont{caption}{size=\footnotesize}
\begin{document}
\begin{frame}
\begin{columns}
\column{0.5\textwidth}
\begin{table}
\centering
\includegraphics[height=.3\textheight]{example-image}
\caption{WT terminal voltage}
\end{table}
\begin{table}
\centering
\includegraphics[height=.3\textheight]{example-image-a}
\caption{WT terminal current}
\end{table}
\column{0.5\textwidth}
\begin{table}
\centering
\includegraphics[height=.3\textheight]{example-image-b}
\caption{Caption 3}
\end{table}
\begin{table}
\centering
\includegraphics[height=.3\textheight]{example-image}
\caption{previous Vterm angle}
\end{table}
\end{columns}
\end{frame}
\end{document}