子浮点文本溢出到第二行并删除图像标识符和文本开头之间的间隙

子浮点文本溢出到第二行并删除图像标识符和文本开头之间的间隙

我有三幅图像需要在同一水平面上显示。我遇到的问题是,我放在下面的图像描述溢出到了第二行。此外,图像标识符字符和单词开头之间有一个巨大的空格。(在 a) 和 EN- 之间)

这是我的代码

\begin{figure}[!h]  
  \centering  
  \subfloat[ENGINE1]{\label{fig:gull}\includegraphics[width=0.1\textwidth]{textures_data_types/lzw.eps}}     
   \hspace{2px}
 \subfloat[ENGINE12]{\label{fig:gull}\includegraphics[width=0.1\textwidth]{textures_data_types/wav.eps}}     
    \hspace{2px}
 \subfloat[BITMAP]{\label{fig:gull}\includegraphics[width=0.1\textwidth]{textures_data_types/bit.eps}}  
 \caption{Systems} 
     \label{fig:bitmapVisualize}
\end{figure}

在此处输入图片描述

答案1

的宽度\subfloat由图形决定。因此,将图形放在固定宽度的框内更大比原始图形更明显。如下所示:

\begin{figure}[!h]  
  \centering  
  \subfloat[ENGINE1]{\label{fig:gull}\makebox[7em]
    {\includegraphics[width=0.1\textwidth]{textures_data_types/lzw.eps}}}
  \quad
  \subfloat[ENGINE12]{\label{fig:gull}\makebox[7em]
   {\includegraphics[width=0.1\textwidth]{textures_data_types/wav.eps}}}
  \quad
  \subfloat[BITMAP]{\label{fig:gull}\makebox[7em]
    {\includegraphics[width=0.1\textwidth]{textures_data_types/bit.eps}}}
  \caption{Systems} 
  \label{fig:bitmapVisualize}
\end{figure}

以上操作将所有图像放置在宽度为 的框中7em,居中(默认)。修改长度以适应。


twocolumn文档模式下,您应该使用\columnwidth以下宽度规格:

在此处输入图片描述

\documentclass[twocolumn]{article}
\usepackage{lipsum}% http://ctan.org/pkg/lipsum
\usepackage[demo]{graphicx}% http://ctan.org/pkg/graphicx
\usepackage{subfig}% http://ctan.org/pkg/subfig

\begin{document}
\lipsum[1]
\begin{figure}
  \centering  
  \subfloat[ENGINE1]{\label{fig:engine1}\makebox[.3\columnwidth]
    {\includegraphics[width=0.3\columnwidth]{textures_data_types/lzw.eps}}}
  \quad
  \subfloat[ENGINE12]{\label{fig:engine12}\makebox[.3\columnwidth]
    {\includegraphics[width=.3\columnwidth]{textures_data_types/wav.eps}}}
  \quad
  \subfloat[BITMAP]{\label{fig:bitmap}\makebox[.3\columnwidth]
    {\includegraphics[width=0.3\columnwidth]{textures_data_types/bit.eps}}}
  \caption{Systems} 
  \label{fig:bitmapVisualize}
\end{figure}
\end{document}

如果需要,您可以\subfloat通过发出类似\footnotesizeinside it ( \subfloat[\footnotesize ENGINE12]{..}) 的命令来减小字体大小。请始终记住,这些事情应该始终如一地进行。

答案2

另一个选择是使用subcaption包而不是subfig包;使用前者,您可以轻松地设置为子浮点数及其标题保留的框的宽度,而与实际图像的宽度无关:

\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage{subcaption}

\begin{document}

\begin{figure}
\centering  
\subcaptionbox{ENGINE1\label{fig:gull4}}[.2\textwidth]{%
  \includegraphics[width=0.1\textwidth]{textures_data_types/lzw.eps}}%
\subcaptionbox{ENGINE12\label{fig:gull5}}[.2\textwidth]{%
  \includegraphics[width=0.1\textwidth]{textures_data_types/wav.eps}}%
\subcaptionbox{BITMAP\label{fig:gull6}}[.2\textwidth]{%
  \includegraphics[width=0.1\textwidth]{textures_data_types/bit.eps}}%  
\caption{Systems} 
\label{fig:bitmapVisualize2}
\end{figure}

\end{document}

在此处输入图片描述

下面是使用文档选项的示例代码twocolumn,展示了如何使用\captionsetup命令来减小子图标题的字体大小:

\documentclass[twocolumn]{article}
\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage{subcaption}

\begin{document}

\begin{figure}
\centering
\captionsetup[subfigure]{font=scriptsize}% reduces font size for subfigure captions  
\subcaptionbox{ENGINE1\label{fig:gull4}}[.3333\columnwidth]{%
  \includegraphics[width=0.1\columnwidth]{textures_data_types/lzw.eps}}%
\subcaptionbox{ENGINE12\label{fig:gull5}}[.3333\columnwidth]{%
  \includegraphics[width=0.1\columnwidth]{textures_data_types/wav.eps}}%
\subcaptionbox{BITMAP\label{fig:gull6}}[.3333\columnwidth]{%
  \includegraphics[width=0.1\columnwidth]{textures_data_types/bit.eps}}%  
\caption{Systems} 
\label{fig:bitmapVisualize2}
\end{figure}

\end{document}

在此处输入图片描述

相关内容