Установка расстояния по умолчанию между подрисунками

Установка расстояния по умолчанию между подрисунками

Я использую много подрисунков в своей диссертации. Теперь я понимаю, что подписи между соседними подрисунками расположены очень близко друг к другу, что затрудняет их чтение.

Поэтому у меня два вопроса:

(1) Как можно увеличить расстояние по умолчанию между двумя подфигурами?

или

(2) Как можно уменьшить ширину подписи под рисунком по умолчанию?

Пример кода:

\usepackage{subfigure}
...
\begin{figure}[h!t]
\centering
\subfigure[long long caption]{
    \includegraphics{filename1}
}
\subfigure[another long caption]{
    \includegraphics{filename2}
}
\caption{two subfigures}
\end{figure}

Спасибо

решение1

Это зависит от того, что вы используете subfig, subcaptionили subfigureпакет (последний фактически устарел в CTAN).

Пример с устаревшим subfigure:

\documentclass[spanish,11pt]{article}
\usepackage{babel}
\usepackage[utf8]{inputenc}

% Compare between loose and normal option in the fig. 1
% (see more options in the documentation)   
\usepackage[normal]{subfigure}
% \usepackage[loose]{subfigure}

% Compare fig. 1 and 2. subcaptions fixing this value
\subfigcapmargin = .5cm

% Fix these other commands as you want and see
% \subfigtopskip = 2cm
% \subfigcapskip = 2cm
% \subfigcaptopadj = 7cm % when caption is above
% \subfigbottomskip = 2cm
% \subfiglabelskip = 2cm

% See fig 3 to 6 examples of set distances 
% between subfigures 
% (there are not any space default, as far I know)

\begin{document}

\begin{figure}%
\centering
\subfigure[subcaption aa aa aa aa]{\framebox{... ... figure text ... ...}}
\subfigure[subcaption bb bb bb bb]{\framebox{... ... figure text ... ...}}
\caption[The caption]{The caption}
\end{figure}

\subfigcapmargin = .0cm

\begin{figure}%
\centering
\subfigure[subcaption aa aa aa aa]{\framebox{... ... figure text ... ...}}
\subfigure[subcaption bb bb bb bb]{\framebox{... ... figure text ... ...}}
\caption[The caption]{The caption}
\end{figure}


\begin{figure}%
%\centering
\subfigure[subcaption]{\framebox{... figure text ...}}\hfill
\subfigure[subcaption]{\framebox{... figure text ...}}
\caption[The caption]{The caption}
\end{figure}


\begin{figure}%
%\centering
\subfigure[subcaption]{\framebox{... figure text ...}}\qquad
\subfigure[subcaption]{\framebox{... figure text ...}}
\caption[The caption]{The caption}
\end{figure}

\begin{figure}%
\centering
\subfigure[subcaption]{\framebox{... figure text ...}}
\hspace{3cm}
\subfigure[subcaption]{\framebox{... figure text ...}}
\caption[The caption]{The caption}
\end{figure}


\begin{figure}%
\centering
\subfigure[subcaption]{\framebox{... figure text ...}}
\\\hspace{5cm}\vspace{1cm}
\subfigure[subcaption]{\framebox{... figure text ...}}
\caption[The caption]{The caption}
\end{figure}


\end{document}

Другое решение — использовать пакет subcaption (несовместимый с subfigure) как есть или с некоторыми опциями, поскольку интервалы между subfigure такие же, как и в любых других float. Пример:

\documentclass{article}
\usepackage{subcaption}
\usepackage[margin=20pt,
font+=small,labelformat=parens,labelsep=space,
skip=6pt,list=false,hypcap=false
]{subcaption}
\begin{document}
    
\begin{figure}%
    \centering
    \begin{subfigure}[h]{0.3\textwidth}
        \framebox{... figure text ...}
        \caption{subcaption}
    \end{subfigure}
    \begin{subfigure}[h]{0.3\textwidth}
        \framebox{... figure text ...}
        \caption{subcaption}
    \end{subfigure}%

    \caption[The caption]{Subfigures with default space and too much margin in subcaptions}
\end{figure}
    
\begin{figure}%
    \centering
    \begin{subfigure}[h]{0.3\textwidth}
        \framebox{... figure text ...}
        \caption{subcaption}
    \end{subfigure}
    \hspace{0.3\textwidth}
    \begin{subfigure}[h]{0.3\textwidth}
        \framebox{... figure text ...}
        \caption{subcaption}
    \end{subfigure}%
    
    \caption[The caption]{Subfigures with extra space}
\end{figure}
    
\end{document} 
 

Аналогично, с помощью subfigпакета вы также можете управлять пространством между подплавами просто с помощью команд, \qquadа также управлять многими опциями подзаголовков. Смотрите пакеты документации.

\documentclass{article}
\usepackage[margin=40pt]
{subfig}
\begin{document}
\begin{figure}%
\centering
\subfloat[][subcaption aa aa aa ]{\framebox{... ... figure text ... ... }}%
\qquad 
\subfloat[][subcaption bb bb bb ]{\framebox{... ... figure text ... ... }}%
\caption{The caption}%
\label{fig:cont}%
\end{figure}
\end{document}

Связанный контент