Date Редакция Категория comp Теги LaTeX / рисунки

Иногда рисунок оказывается слишком широк, чтобы поместиться на страницу,

shirley1.png

и надо его повернуть. Вместе с подписью

shirley2.png

rotating

Проще всего, на мой взгляд, сделать это с помощью пакета rotating и реализованного в нем окружения sidewaysfigure:

\begin{sidewaysfigure}
\centering\includegraphics[scale=1]{shirley}%
\caption{Раз, два, взяли и сдвинули Ширли!}
\label{fig:fig1}
\end{sidewaysfigure}

Поворот на 90 градусов выполняется по умолчанию (вообще в rotating есть средства для вращения на произвольный угол), так же как и помещение рисунка на отдельную страницу.

Помещать рисунок на отдельной странице логично -- раз уж он не вписывается в страницу по ширине, то и по высоте останется мало свободного места. Но если все же нужно разместить рисунок вместе с текстом, то можно воспользоваться одним из двух способов

  • командой \hvFloat пакета hvfloat.
  • окружениями minipage и adjustbox (из одноименного пакета).

hvfloat

Вот как выглядит использование команды \hvFloat пакета hvfloat:

\hvFloat[floatPos=ht, capWidth=h, capPos=r, capAngle=90, objectAngle=90, capVPos=c,
 objectPos=c]{figure}{\includegraphics[scale=.7]{shirley}}
{Раз, два, взяли и сдвинули Ширли!}{fig:fig2}

Заголовок расположен справа от рисунка, центрирован по вертикали, ширина заголовка равна ширине рисунка и расстояние от рисунка до заголовка \texttt{floatcapsep} равно 5pt (по умолчанию).

shirley3.png

Заметим, что последние фигурные скобки содержат метку рисунка -- использовать отдельную команду \label не нужно. Однако в таком виде Texmaker не распознает fig:fig2 как метку. Мелочь (особенно для тех, кто не использует Texmaker), а неприятно.

adjustbox и minipage

А вот применяя adjustbox без \label не обойтись (если, конечно, рисунку нужна метка):

\begin{figure}[ht]
  \begin{adjustbox}{addcode={\begin{minipage}{\width}}{\caption{%
      Раз, два, взяли и сдвинули Ширли!
      }\end{minipage}},rotate=90,center}
      \includegraphics[scale=.7]{shirley}%
  \end{adjustbox}
  \label{fig:fig3}
\end{figure}

Шириной заголовка (или высотой, после поворота рисунка) управляет ширина minipage, равная \width.



Комментарии

comments powered by Disqus