В этой статье я покажу, как сделать pdf-слайды для презентации с помощью pandoc и LaTeX-шаблона beamer.
Pandoc – программа для конвертации текстов между разными форматами. Написана на Haskell, для генерации pdf использует pdflatex.
Входные форматы:
Выходные форматы:
Для Ubuntu есть в пакетах:
> sudo apt-get install pandoc
А также – LaTeX (список пакетов проверен на свежей установке Ubuntu 14.04):
> sudo apt-get install texlive texlive-latex-base texlive-lang-cyrillic latex-beamer texlive-fonts-recommended texlive-latex-recommended texlive-latex-extra cm-super
slides-1.md
:
% Title
% My name
% May 2, 2000
# Section header
## slide 1
- item 1
- item 2
## slide 2
- item 3
- item 4
# Section header 2
## slide 3
- item 5
- item 6
Компилируем pdf:
pandoc -t beamer -s slides-1.md -o slides-1.pdf
Готово, смотрим слайды в slides-1.pdf
.
Добавляем русский текст.
slides-2.md
:
% Заголовок
% Имя Фамилия
% May 2, 2000
# Заголовок раздела
## слайд 1
- пункт 1
- пункт 2
Компилируем pdf с указанием языка:
pandoc -t beamer -V lang=russian -s slides-2.md -o slides-2.pdf
slides-3.md
% Заголовок
% Имя Фамилия
% May 2, 2000
# Заголовок раздела
## слайд 1
- пункт 1
- пункт 2
## слайд 2 -- perl-код
~~~perl
sub my_func {
my ($q, $w) = @_;
return 1;
}
~~~
Чтобы регулировать ширину картинок, можно пользоваться LeTeX-овской инструкцией:
slides-4.md
% Заголовок
% Имя Фамилия
% May 2, 2000
# Заголовок раздела
## слайд 1
- пункт 1
- пункт 2
## слайд 2 -- картинки
\includegraphics[width=4in]{images/1.png}
\includegraphics[width=2in]{images/2.png}
Если хочется радикально поменять оформление, например, использовать другой базовый класс – можно поменять LaTeX-шаблон, который применяется к презентации.
Дампим встроенный шаблон pandoc’а:
> pandoc -D beamer > beamer.my
Редактируем beamer.my по своему усмотрению и используем:
> pandoc -t beamer --template beamer.my -s slides.md -o slides.pdf