Как отформатировать/включить подрисунки в класс документа AASTex?

Как отформатировать/включить подрисунки в класс документа AASTex?

Я писал документ, используя базовый класс "article", но теперь мне нужно изменить его на "aastex". Когда я это делаю, мои подрисунки не работают. Есть ли способ, которым aastex допускает подрисунки?

Я старался сохранить исходный документ максимально простым, поэтому уверен, что caption и subcaption были единственными пакетами, которые я включил в него.

\usepackage{graphicx}
\usepackage{caption}
\usepackage{subcaption}

\begin{figure}
        \centering
        \begin{subfigure}[b]{0.45\textwidth}
                \centering
                \includegraphics[width=\textwidth]{fig1.pdf}
                \caption{Caption 1}
                \label{fig:fig1}
        \end{subfigure}%
        \quad
        \begin{subfigure}[b]{0.45\textwidth}
                \centering
                \includegraphics[width=\textwidth]{fig2.pdf}
                \caption{Caption 2}
                \label{fig:fig2}
        \end{subfigure}
        \caption{Side-by-side figures.}
        \label{fig:figures}
\end{figure}

решение1

Прежде всего, давайте посмотрим, как выглядит обычная фигура подaastex:

введите описание изображения здесь

\documentclass{aastex}
\usepackage{graphicx,showframe}

\begin{document}

\begin{figure}
  \centering
  \includegraphics[width=.3\linewidth]{example-image}
  \figcaption{Side-by-side figures.}
  \label{fig:figures}
\end{figure}

\end{document}

Обратите внимание на использование \figcaptionдля подписи рисунка. Класс документа устанавливает подпись влево (полностью выровненной). Теперь давайте рассмотрим использованиеcaptionи/илиsubcaption:

введите описание изображения здесь

\documentclass{aastex}
\let\captionbox\relax
\usepackage{graphicx,caption,subcaption,showframe}
\captionsetup[figure]{labelsep=space,singlelinecheck=false}
\captionsetup[subfigure]{justification=centering}

\begin{document}

\begin{figure}
  \centering
  \begin{subfigure}[b]{0.45\textwidth}
    \centering
    \includegraphics[width=.6\linewidth]{example-image-a}
    \caption{Caption 1}
    \label{fig:fig1}
  \end{subfigure}%
  \quad
  \begin{subfigure}[b]{0.45\textwidth}
    \centering
    \includegraphics[width=.4\linewidth]{example-image-b}
    \caption{Caption 2}
    \label{fig:fig2}
  \end{subfigure}
  \caption{Side-by-side figures.}
  \label{fig:figures}
\end{figure}

\end{document}

Разрешение \captionboxна \relaxработу captionс aastex(так что это требование). Затем мы устанавливаем [figure]параметры для игнорирования a singlelinecheck- это устанавливает ширину рисунка, как \linewidthнезависимо от ширины подписи. Также a spaceдобавляется какlabelsep . Мы такжеперезагрузитьto justificationfor , так как они наследуют все \centering, [subfigures]что указано for [figure].

Конечно, это можно подделать и с помощью tabulars (теряя часть функциональности перекрестных ссылок):

введите описание изображения здесь

\documentclass{aastex}
\usepackage{graphicx,showframe}

\begin{document}

\begin{figure}
  \centering
  \begin{tabular}[b]{@{}p{0.45\textwidth}@{}}
    \centering\includegraphics[width=.6\linewidth]{example-image-a} \\
    \centering\small (a) Caption 1
  \end{tabular}%
  \quad
  \begin{tabular}[b]{@{}p{0.45\textwidth}@{}}
    \centering\includegraphics[width=.4\linewidth]{example-image-b} \\
    \centering\small (b) Caption 2
  \end{tabular}
  \caption{Side-by-side figures.}
  \label{fig:figures}
\end{figure}

\end{document}

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