Ладно. Я действительно в растерянности.
Я попросил своего профессора прислать мне слайды, потому что они показались мне очень красивыми. Он прислал мне tex-файл, и пока он работает отлично, однако я просто хочу включить туда рисунок с подписью. \includegraphics{ ... ] вроде бы работает отлично, но когда я пытаюсь обернуть его вокруг окружения begin/end{figure}, он игнорируется.
\documentclass[a4paper,landscape]{slides}
\usepackage[centertags,reqno]{amsmath}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{rotating}
\topmargin -2cm \textheight 17cm \textwidth 24cm
\special{landscape} %landscape
\newcommand{\nextslide}[1]{\end{slide}\begin{slide}{\bf \underline{\centerline{#1}}}}
\begin{document}
\begin{slide}
\nextslide{Fun Stuff}
% Doesn't work
%\begin{figure}[h]
%\centering
%\includegraphics{foo}
%\caption{caption}
%\end{figure}
% Does work
\includegraphics{foo}
\end{slide}
\end{document}
решение1
Для использования подписей без плавающего элемента можно воспользоваться пакетом caption
(см.Метка и подпись без плавающего элементаcaption
). Чтобы расширить этот ответ, в документации (в настоящее время страница 18) дано важное замечание :
[...] вы должны использовать оба варианта
\captionof
и\captionof*
только внутри коробок или сред [...]
Поэтому вам следует использовать либо существующую среду (например, \begin{center} \end{center}
), либо пользовательскую среду (определенную с помощью \newenvironment
), чтобы указать область действия подписи (мм для полей).
Для использования \captionof
тип должен быть объявлен с помощью \DeclareCaptionType
, который, к сожалению, отсутствует в документации пакета (обратите внимание, что текущая версия на CTAN датирована 2016-05-22, а документация датирована 2011-11-02). Идентификатор для типа должен быть выбран так, чтобы не конфликтовать с существующими командами (например, в MWE ниже идентификатор figure
генерирует ошибку, в то время как myfigure
все в порядке).
Код:
\documentclass[a4paper,landscape]{slides}
\usepackage[centertags,reqno]{amsmath}
\usepackage{amssymb}
\usepackage{graphicx}
\usepackage{rotating}
\usepackage{caption}
\DeclareCaptionType{myfigure}[Figure]
\newenvironment{nonfloat}{}{}
\topmargin -2cm \textheight 17cm \textwidth 24cm
\special{landscape} %landscape
\newcommand{\nextslide}[1]{\end{slide}\begin{slide}{\bf \underline{\centerline{#1}}}}
\begin{document}
\begin{slide}
\nextslide{Fun Stuff}
\begin{nonfloat}
\includegraphics{example-image}
\captionof{myfigure}{This is a figure.}
\end{nonfloat}
\end{slide}
\begin{slide}
\nextslide{Centered}
\begin{center}
\includegraphics{example-image-b}
\captionof{myfigure}{This is a centered figure.}
\end{center}
\end{slide}
\end{document}
Результат: