Как указать страницу рисунка в LaTeX?

Как указать страницу рисунка в LaTeX?

Как мы можем указать страницу рисунка? Например, я хочу показать рисунок наверху страницы 5.

решение1

Если вы не знаете, в какой момент текста появится нужная вам страница, вы можете использовать комбинацию пакетов, чтобы сделать то, что вам нужно:

  • Пакет everypageдобавляет хук, который можно запустить на каждой странице.
  • Пакет afterpageпозволяет вставить код на следующую страницу.

Вы можете объединить их, как я сделал ниже, так, чтобы на каждой странице проверялся номер страницы, и если это страница, предшествующая нужной вам, то она afterpageиспользовалась для вставки вашего рисунка.

(Почему номер страницы должен быть 3таким, чтобы рисунок попадал на страницу, 5мне непонятно).

\documentclass{article}
\usepackage{everypage}
\usepackage{afterpage}
\usepackage{ifthen}
\usepackage{pgfplots}
\usepackage{lipsum}

\AddEverypageHook{
  \ifthenelse{\value{page}=3}{
    \afterpage{
      \begin{figure}[t]
        \centering
        \begin{tikzpicture}
          \begin{axis}
            \addplot {cos(x)};
          \end{axis}
        \end{tikzpicture}
      \end{figure}
    }
  }{}
}

\begin{document}

\lipsum[1-40]

\end{document}

Это может быть излишним. Держу пари, что есть способы сделать это лучше!

решение2

Вы можете просто физически разместить рисунок рядом с текстом на странице 5 и использовать следующее, чтобы поместить рисунок в верхнюю часть страницы:

\begin{figure}[t]
\includegraphics{fig}
\end{figure}

решение3

Чтобы поместить фигуру в определенное место, можно использовать параметр 'H'(ere)

\begin{figure}[H]

Хотя вы не можете явно указать номер страницы, это предложение увеличивает контроль над размещением рисунка (которое по-прежнему зависит от текста вокруг него).

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