Размещать элемент и включать графику или рисунок на одной странице

Размещать элемент и включать графику или рисунок на одной странице

Я создаю руководство по программному обеспечению, в котором я использую нумерованный список для шагов. Многие из шагов имеют снимок экрана, который я отображаю под элементом. Я хотел бы сохранить элемент и следующий рисунок или график вместе. Я пробовал Samepage, который не работает. Я также пробовал мини-страницы, которые работают, но усложняют нумерованный список. У меня были бы тысячи мини-страниц, если бы я использовал его. Мое решение до сих пор состояло в том, чтобы добавить ручные разрывы страниц или clearpage. Я бы предпочел код, чтобы мне не приходилось постоянно редактировать ручные разрывы.

МВЭ

    \section{Section Name}
    \begin{enumerate}
    \item Directions go here
    \FloatBarrier \begin{figure[!h]
    \centering\includegraphics[scale=0.65]{ImageA.png}
    \end{figure} \FloatBarrier
    \item Next step in directions.
    \FloatBarrier \begin{figure[!h]
    \centering\includegraphics[scale=0.65]{ImageB.png}
    \end{figure} \FloatBarrier
    \item Step three.
    \FloatBarrier \begin{figure[!h]
    \centering\includegraphics[scale=0.65]{ImageC.png}
    \end{figure} \FloatBarrier
\end{enumerate}

решение1

Вам не нужно иметь окружение \includegraphicsвнутри figure. В частности, если вы хотите разместить изображения в тексте, вы можете также использовать окружение center:

\documentclass{article}

\usepackage{mwe}
\usepackage{graphicx}

\begin{document}
\section{Section Name}
\begin{enumerate}
\item Directions go here
  \begin{center}
    \includegraphics[height=4cm]{example-image-a}
  \end{center}
\item Next step in directions.
  \begin{center}
    \includegraphics[height=4cm]{example-image-b}
  \end{center}
\item Step three.
  \begin{center}
    \includegraphics[height=4cm]{example-image-c}
  \end{center}
\end{enumerate}
\end{document}

выход

Обратите внимание, что это само по себе просто облегчает размещение изображений, но не предотвращает разрывы страниц между текстом и centerсредой. Если вы действительно хотите заставить их быть вместе, есть два варианта: либо использовать samepageсреду, либо определить новое \par, которое предотвращает разрыв страницы (взято изэтот ответ). Оба варианта проиллюстрированы ниже:

\documentclass{article}

\usepackage{mwe}
\usepackage{graphicx}
\makeatletter 
\newcommand\nobreakpar{\par\nobreak\@afterheading} 
\makeatother

\begin{document}
\section{Section Name}
\begin{enumerate}
\item Directions go here   % This allows a page break
  \begin{center}
    \includegraphics[height=6cm]{example-image-a}
  \end{center}
\item Next step in directions. \nobreakpar % No page break here
  \begin{center}
    \includegraphics[height=6cm]{example-image-b}
  \end{center}
\item
  \begin{samepage}  % No page break anywhere inside this environment
    Step three.
    \begin{center}
      \includegraphics[height=6cm]{example-image-c}
    \end{center}
  \end{samepage}
\end{enumerate}
\end{document}

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