在框架环境中为图像添加字幕?

在框架环境中为图像添加字幕?

我在 framed 环境中有一张图片,我想给它添加标题。使用 figure 环境会导致编译器崩溃

\documentclass[a4paper]{article}
\usepackage[a4paper, total={170mm,257mm}, left=20mm, top=20mm]{geometry}

\usepackage{framed}
\usepackage{graphicx}

\begin{document}
\begin{framed}
    Lots and lots of text
    \begin{figure}
        \centering
        \includegraphics{Image.JPG}
        \caption{Caption}
        \label{fig:my_label}
    \end{figure}
    Lots more text
\end{framed}
\end{document}

我已经找到了将图像包含在框架中的方法

\documentclass[a4paper]{article}
\usepackage[a4paper, total={170mm,257mm}, left=20mm, top=20mm]{geometry}

\usepackage{framed}
\usepackage{graphicx}

\begin{document}
\begin{framed}
    Lots and lots of text
    \begin{center}
        \includegraphics{Image.JPG}
    \end{center}
    Lots more text
\end{framed}
\end{document}

但是,这种方法不允许我为图像添加标题或标签。如何为位于框架环境中的图像添加标题。

答案1

我将其放在答案中以便未来的访问者更容易看到。

正如 Mensch 所评论的,该\captionof命令允许您在浮动环境之外创建标题。以下代码实现了我想要的效果

\documentclass[a4paper]{article}
\usepackage[a4paper, total={170mm,257mm}, left=20mm, top=20mm]{geometry}

\usepackage{framed}
\usepackage{caption}
\usepackage{graphicx}

\begin{document}
\begin{framed}
    Lots and lots of text
    \begin{center}
        \includegraphics{example-image-a}
        \captionof{figure}{Caption}
    \end{center}
    Lots more text
\end{framed}
\end{document}

相关内容