
[ Цыганов ] Создание презентаций в LaTeX
.pdfСоздание презентаций в LaTeX’e.
(краткое описание, весна 2007)
А.В. Цыганов кафедра вычислительной физики, физический факультет СПбГУ
Для создания презентаций, ничуть не уступающих презентациям, созданным с помощью программы PowerPoint, в LaTeX’e существует несколько специальных пакетов, таких как Beamer, Prosper, PPower4, PowerDot, PdfScreen, PdfSlide и другие.
В данном кратком изложении мы остановимся на двух современных пакетах Beamer и Power Dot, которые входят в дистрибутив MikTex 2.5 и создают pdf файлы стандартными средствами этого дистрибутива, которые не требуют дополнительной обработки с помощью специальных средств.
Исходная документация по пакету PowerDot занимает около 40 листов, по пакету Beamer – около 214 листов. После установки полной версии Miktex2.5
данная документация может быть найдена в директориях
Miktex2.5/doc/latex/beamer и Miktex2.5/doc/latex/powerdot.
Мы не будем переводить эти документы и ограничимся только двумя примерами файлов с минимальным набором возможных функций.
Пакет PowerDot
Этот пакет на данный момент мне кажется наиболее оптимальным по отношению времени изучения к набору заложенных в нем возможностей. Конечно, более продвинутые пакеты содержат в себе больше возможностей, но изучение и применение этих возможностей не всегда оправдано.
Для получения файла презентаций в формате pdf необходимо создать обычный tex-файл и затем построить dvi файл и конвертировать его последовательно в ps и pdf файлы. Если вы используете редактор WinEdt, то
для этого надо последовательно нажать на три кнопки
1. Latex 2. dvi->ps и 3. ps-> pdf (как обычно 2 раза)
После этого вы получаете pdf файл презентации, который можно запустить, используя Acrobat Reader или другие подобные программы.
Ниже приводится пример tex-файла, в котором комментарии, как обычно, помечены знаком %.
Итак, исходный tex файл выглядит следующим образом:
%Файл proba.tex
%Преамбула – в ней содержаться основные сведения о презентации
\documentclass[size=12pt,
%Размер шрифта, если вы уважаете слушателей, то размер шрифта должен %быть не очень маленьким
style=fyma,
%Определяет форму и цвета презентации, стилей довольно много,
некоторые из них приведены ниже
%default, simple, tycja, ikeda, ciment,
%elcolors, aggie, husky, sailor, upen, bframe
%horatio, paintings, klope, jefka, pazik
%
%
mode=present,
%Данная опция используется для вывода презентации на экран, для печати
%и заметок используйте опции
%mode=print %mode=handout%
%
paper=a4paper,
%Данная опция задает размер изображения, возможные варианты
%paper=screen
%paper=letterpaper
%
%Для того, чтобы в правом верхнем углу появились электронные часы, %используйте опцию
clock
%
]{powerdot}
%На этом список всех возможных опций, которые может быть в преамбуле,
%не заканчивается, необходимые вам опций можно найти в документации и
%вставить их внутрь квадратных скобок.
%Далее следует обычная преамбула tex-файла, в которой вы загружаете
% необходимые вам пакеты и языки.
\usepackage{amsfonts,amssymb, amsmath,mathrsfs} \usepackage[english]{babel}
\usepackage{listings} \usepackage{pstricks,pst-node,pst-text,pst-3d,pst-grad} \usepackage{moreverb,epsfig,color,subfigure}
%
%
%Можно определить свой собственный цвет, например, в rgb палитре
\definecolor{brred}{rgb}{1.,.1,.1}
%
% Затем , если это необходимо, вводится название презентации и ее автор
%
\title{PowerDot example} \author{Andrey Tsiganov}
%
% Далее начинается сама презентация
\begin{document}
\maketitle
%
%Первый слайд
\begin{slide}{First slide} Hello World. \end{slide}
%По умолчанию, все заголовки слайдов помещаются слева на экране для
%быстрого перехода между ними. Если вам надо использовать всю ширину %экрана, то вывод списка слайдов можно отменить, используя заголовок %типа
%\begin{slide}[toc=,bm=}{First slide}
%Переходы между слайдами задаются опцией
%trans = Split, Blinds, Box, Wipe, Dissolve, Glitter, Replace,
%Fly, Push, Cover, Uncover и Fade
%Например
\begin{slide}[ trans=Glitter /Di 0]{Second slide} It’s my second slide.
\end{slide}
%
%Заметим, что переходы видны только при полноэкранном режиме работы
%Adobe Reader.
%
% Рассмотрим теперь немного более сложный пример
%
\begin{slide}[trans=Wipe]{The quest for $\pi$}
\begin{itemize}
\item The following formula computes $8$ correct digits per iteration (Ramanujan): \pause
\item
\begin{small}
\begin{equation*}
{\color{red} \frac{1}{\pi}}=\sum_{n=0}^\infty \frac{(\frac{1}{4})_n(\frac{2}{4})_n(\frac{3}{4})_n}{n!^3} \bigl(2\sqrt{2}(1103+26390n)\bigr)\frac{1}{(99^2)^{2n+1}} \end{equation*}
\end{small}
\end{itemize}
\end{slide}
%
%Итак, для различных цветов используется команда \color{цвет}, для
%переходов команда \pause.
%Теперь немного более сложный пример работы с цветом
\begin{slide}{Degree Of Anonymity} \begin{itemize}
\item<1-> Defines a degree of anonymity $d$ based on entropy of the system \item<2-> The entropy of the system is
\[\onslide*{3}{\textcolor{brred}{H(X)}} \onslide*{-2,4-}{H(X)}
=-\sum_{i=1}^{ \onslide*{4}{\textcolor{brred}{N}}
\onslide*{-3,5-}{N}
}
\left( \onslide*{5}{\textcolor{brred}{p_i}}
\onslide*{-4,6-}{p_i} \lg(\onslide*{5}{\textcolor{brred}{p_i}}\onslide*{-4,6-}{p_i})
\right)
\]
\begin{itemize}
\item \onslide+{3}{The entropy for the system} \item \onslide+{4}{The number of nodes}
\item \onslide+{5}{The probability associated with node $i$} \end{itemize}
\item<6-> And the maximal is $HM = \lg(N)$ \item<7-> Finally $d = \frac{H(X)}{HM}$
\end{itemize}
\end{slide}
%Как и в обычном tex-файле можно разделять презентацию на разделы и
%подразделы.
\section{First section}
%Кроме команды \pause можно разбить слайд на части и показывать эти
%части в необходимом вам порядке. Для этого служит команда \onslide{}.
%Цифры в скобках указывают на сколько частей разбит слайд и когда видна
%та или иная часть слайда.
\begin{slide}{Dynamical system} \onslide{1,2}{
Dynamical systems on $\mathscr M$ having enough functionally independent integrals of motion $H_1,\ldots H_{n}$ in involution with respect to both Poisson brackets
\[ \{H_i,H_j\}_0=\{H_i,H_j\}_1=0\,. \]
will be called {\color{red} bi-integrable systems}. \vskip0.5cm}
\onslide{2}{
\color{black}\textbf{Example:}
If the vector fields $X_{H_i}$ are bi-hamiltonian vector fields, which form a so-called anchored Lenard-Magri sequence
\[ P_0dH_1=0,\qquad X_{H_i}=P_0dH_i=P_1dH_{i-1},\qquad P_1dH_n=0. \]
then integrals of motion $H_1,\ldots H_{n}$ are in the bi-involution.
}
\end{slide}
%
%В качестве примера использования графических объектов и текстовых
%команд, приведем следующий слайд
%
\begin{slide}[method=file]{Taylor}
\begin{lstlisting}[escapechar=|,mathescape]
e^x |\pause| = 1 + |\pause|x + |\pause|x^2/2! + |\color{red}{\ldots}| |\pause| e^x |\pause| = 1 + |\pause|x + |\pause|$\rnode{A}{\frac{x^2}{2!}}$ + |\color{red}{\ldots}|
\end{lstlisting}
\pause\vspace{.1in}
Notice, \rnode{B}{this} fraction is in \verb|mathmode|. \onslide*{11-}{\ncarc[linecolor=blue,arcangle=-5]{->}{B}{A}}\pause \vspace{.1in}
\end{slide}
%
%Далее немного более сложное применение графических примитивов и
%пакета pstrics
\section[slide=false]{Token}
\begin{slide}{Token Ring} \twocolumn{}
{%Left
\begin{itemize}[type=0]
\item<1-> A method for communication that gives guaranteed delivery and allows only $1$ message at a time
\item<2-> $r$ tokens on a ring (generally $r \gets 1$)
\item<3-> A node can add a message when it receives a token only if the token is empty
\item<4-> The token is passed around the ring \textit{in a fixed predetermined order}
\item<5-> When a node receives a message he removes it from the token \end{itemize}
}
{%Right
\begin{minipage}{2.5in}
\setlength{\unitlength}{.1in}
\begin{itemize}[type=1,labelsep=0pt,leftmargin=0pt,label=] \item<1->
\begin{pspicture}(0,-6)(6,0) \psset{linecolor=yellow} \pscircle[linewidth=2pt](2.5,3){2.5} \cput*[fillcolor=red](2.5,5.5){{\color{white} $0$}} \pnode(2.5,5.5){node0}
\cput*[fillcolor=red](4.268,4.768){{\color{white} $1$}} \pnode(4.268,4.768){node1} \cput*[fillcolor=red](5,3){{\color{white} $2$}} \pnode(5,3){node2} \cput*[fillcolor=red](4.268,1.232){{\color{white} $3$}} \pnode(4.268,1.232){node3} \cput*[fillcolor=red](2.5,.5){{\color{white} $4$}} \pnode(2.5,.5){node4} \cput*[fillcolor=red](.732,1.232){{\color{white} $5$}} \pnode(.732,1.232){node5} \cput*[fillcolor=red](0,3){{\color{white} $6$}} \pnode(0,3){node6} \cput*[fillcolor=red](.732,4.768){{\color{white} $7$}} \pnode(.732,4.768){node7}
\end{pspicture} \item<1->
\onslide{1}{\rput[t](2.5,12){\psframebox[linewidth=0pt,linestyle=none, fillstyle=solid,fillcolor=green]{$T = \emptyset$}}}
\onslide{2}{\rput[tr](4.0,11.4){\psframebox[linewidth=0pt,linestyle=none,
fillstyle=solid,fillcolor=blue]{$T = \emptyset$}}}
\onslide{3}{\rput[r](4.5,9.5){\psframebox[linewidth=0pt,linestyle=none, fillstyle=none,fillcolor=blue]{$T = M$}}}
\onslide{4}{\rput[br](3.75,7.5){\psframebox[linewidth=0pt,linestyle=none, fillstyle=solid,fillcolor=yellow]{$T = M$}}}
\onslide{5}{\rput[b](2.1,7.0){\psframebox[linewidth=0pt,linestyle=none, fillstyle=none,fillcolor=magenta]{$T = M$}}}
\onslide{6}{\rput[bl](0.2,7.4){\psframebox[linewidth=0pt,linestyle=none, fillstyle=solid,fillcolor=magenta]{$T = \emptyset$}}}
\end{itemize}
\end{minipage}
}
\end{slide}
%Далее следует стандартное завершение
\end{document}
\endinput
%
% Конец файла
Попробуйте поменять стили презентации в преамбуле и другие опции.
Пакет Beamer
Данный пакет разработан и очень широко распространен в Америке. Отличается огромным количеством заложенных в нем возможностей. В Америке стал де-факто стандартом для создания презентаций.
Для получения файла презентаций в формате pdf необходимо создать обычный tex-файл и затем сразу построить pdf файл, используя команду PdfLatex. После этого вы получаете pdf файл презентации, который можно запустить, используя Acrobat Reader или другие подобные программы.
Ниже приводится пример tex-файла, в котором комментарии, как обычно, помечены знаком %.
%Файл proba2.tex
%Преамбула – в ней содержаться основные сведения о презентации
\documentclass{beamer}
\usepackage{beamerthemesplit}
%Стили презентации в данном пакете задаются именем Университета, в
стиле и цветах которого вы хотите оформить презентации
\usetheme{CambridgeUS}
%Выпишем часть возможных стилей, некоторые из них могут содержать
%дополнительные опции
%default, Bergen, Madrid, AnnArbor,Pittsburg, Rochester,
%Antiles, Montpellier, Berkley, Berlin
%
%Далее пакеты, необходимые вам для создания презентации
\usepackage{amsmath}
\usepackage[english]{babel}
%Если у вас есть логотип вашей кафедры, факультета или университета, то
%его можно включить в презентацию.
%Необходимо наличие графического файла в текущей директории !!!
%\Logo{\includegraphics[width=1cm]{logo.eps}}
%
%Далее начинается сама презентация
\begin{document}
%Первый слайд
\frame{ \frametitle{First slide} Hello World.
}
% Все очень просто.
%Переходы между слайдами задаются командами
%\trans***<overlay specification>[options]
%Здесь
%<overlay specification> - указание к какой части слайда применить
%переход;
%[options] – указание длительности и направления перехода
%
%Вместо *** нужно подставить – dissolve, blindshorizontal, blindsvertical,
%boxin, boxout, glitter, splitverticalin, splitverticalout,wipe, duration и т.д.
%Кроме этого, можно задавать свои способу перехода – см. документы
%Например
\begin{frame}
\transwipe[direction=90]
%\transdissolve[duration=0.2] \frametitle{Second slide}
It’s my second slide. \end{frame}
%Напомним, что переходы видны только при полноэкранном режиме
%работы Adobe Reader.
%
%Рассмотрим более сложный слайд с переходами
\begin{frame}
\frametitle{The quest for $\pi$} \begin{itemize}
\item The following formula computes $8$ correct digits per iteration (Ramanujan): \pause
\item
\begin{small}
\begin{equation*} \frac{1}{\pi}=\sum_{n=0}^\infty
\frac{(\frac{1}{4})_n(\frac{2}{4})_n(\frac{3}{4})_n}{n!^3} \bigl(2\sqrt{2}(1103+26390n)\bigr)\frac{1}{(99^2)^{2n+1}}
\end{equation*}
\end{small}
\end{itemize}
\transglitter<1>[direction=315]
\transboxin<2>[direction=90]
\end{frame}
%Как и ранее для различных цветов используется команда \color{цвет}, для
%переходов команда \pause. Стиль перехода задается либо в преамбуле,
%либо может быть задан в заголовке слайда и этих стилей огромное
%количество.
%
%Красивые переходы нужны для того, чтобы переключить внимание
%слушателей, обычно используются для подчеркивания мысли, для
%пробуждения уставших слушателей или для вешания лапши на уши
%некомпетентному начальству. Применять при докладах среди
%специалистов рекомендуется в очень ограниченных дозах, так как для них
%важнее не ваши компьютерные навыки, а содержание презентации.
%
%Более сложный структурированный пример
\frame{
\frametitle{Light Scheme} \begin{itemize}
\item A first item \pause \item A second item\pause \begin{itemize}
\item A sub item\pause \begin{itemize}
\item \color{blue} A sub sub item \item \color{red} Another sub sub item \end{itemize}
\item Back to sub item \pause \end{itemize}
\item Last item \pause \end{itemize}
}
%Теперь приведем пример с изменением прозрачности текста и %разбиением слайда на блоки
\frame { \frametitle{Theorem} \begin{block}{First}<1>
The weak cardinality theorems hold both for recursion and automata theory \alert{by coincidence}.
\end{block}
\begin{block}{Second Explanation}<1-2> The weak cardinality theorems hold both for
recursion and automata theory, \alert{because they are instantiations of\\ single, unifying theorems}.
\end{block}
\vskip1em \visible<2->{
The second explanation is correct.\\
The theorems can (almost) be unified using first-order logic.
}
}