两个并排的身影

两个并排的身影

我怎样才能将两幅图并排放置?不是两个子图,而是两个带有单独“图:bla bla”标题的实际图。图应该遍布整个文本宽度,但我有两个图又窄又长,我需要节省空间以承受页数限制。

答案1

您可以将minipages放入figure环境中,并为每个环境获取单独的标题。

\documentclass{article}
\usepackage{lipsum}
\usepackage{mwe}

\begin{document}
How can I put two figures side-by-side? Not two sub-figures, but two actual figures
with separate "Fig.: bla bla" captions. A figure is supposed to spread over the
entire text width, but I have two figures which are narrow and long, and I need to
save the space in order to withstand the pages limit.

\lipsum

\begin{figure}
    \centering
    \begin{minipage}{0.45\textwidth}
        \centering
        \includegraphics[width=0.9\textwidth]{example-image-a} % first figure itself
        \caption{first figure}
    \end{minipage}\hfill
    \begin{minipage}{0.45\textwidth}
        \centering
        \includegraphics[width=0.9\textwidth]{example-image-b} % second figure itself
        \caption{second figure}
    \end{minipage}
\end{figure}

\lipsum[3]

\end{document}

示例代码渲染

令我惊讶的是,\captions同一figure环境中的两个系统实际上能够按预期运行。

H T:LaTeX 很重要通过谷歌

答案2

由于您的图形将并排放置,因此它们不应独立浮动。因此,两个对象只需要一个图形环境。

在这个图形环境中,您可以使用小页面(就像 Matthew 已经建议的那样)。一些补充:

  • minipages 了解可选的对齐参数,以在顶部、底部或中心对齐。
  • 为了给小页面添加标题,我建议使用副标题包。它是功能丰富的标题包裹。

不过你可以看看子图包。即使您自定义标题,使它们看起来像两个独立的图形,该任务也可以像子图一样处理。

答案3

floatrow包可以利用其 floatrow 环境轻松地做到这一点(以及许多其他事情):

       \documentclass[12pt,a4paper]{article}
        \usepackage[utf8]{inputenc}
        \usepackage[T1]{fontenc}
        \usepackage{lmodern}
        \usepackage{graphicx}
        \usepackage{caption}
         \usepackage{floatrow}%

        \begin{document}

        \begin{figure}[!h]
           \begin{floatrow}
             \ffigbox{\includegraphics[scale = 0.8]{casxinf1}}{\caption{Case  $ x  < 1 $}\label{case1}}
             \ffigbox{\includegraphics[scale = 0.8]{zoom}}{\caption{A zoom}\label{zoom}}
           \end{floatrow}
        \end{figure}

        \end{document}

在此处输入图片描述

答案4

我在一个文档中完成了这项工作两个文本列,只是想分享我所做的事情。

在这种情况下,我想要一个数字两张并排的图片出现在一个文本列内

\centering迷你页面内部造成了麻烦,所以我删除了它们。此外,需要\linewidth使用(一列宽度),而不是\textwidth(等于完整的两列宽度)。

另一个陷阱是width=参数\includegraphics:由于我们在一个迷你页面中,这个宽度指的是小页面的宽度,而不是列的宽度。

这是我的代码:

\begin{figure}
\centering
\begin{minipage}{.45\linewidth}
  \includegraphics[width=\linewidth]{img1.png}
  \captionof{figure}{First caption}
  \label{img1}
\end{minipage}
\hspace{.05\linewidth}
\begin{minipage}{.45\linewidth}
  \includegraphics[width=\linewidth]{img2.png}
  \captionof{figure}{Second caption}
  \label{img2}
\end{minipage}
\end{figure}

确保\hspace{.05\linewidth}两个标题之间有一定的水平空间。

相关内容