Beamerとは

LaTeXでプレゼン用スライドを作成するパッケージ.スライドをLaTeXで作成するメリットとしては以下が考えられる.

  • 数式を自然に文中に表現できる.これは最近のPowerpointやKeynoteでできるようになってきている?ようだが,未だに(2022/06時点)でもLaTeXの方が数式を扱いやすい.
  • 配置の自由度が低いために,むしろデザイン的なことを考えずにコンテンツ作成に集中できる.(デザインを考えようとするとむしろ多大な労力がかかる)

なので,数式を多く含むスライドを作成しなければいけないような場合には,一度きれいなデザインのテーマを選択してしまって,あとはコンテンツ作成に集中しようという思想であればBeamerはよく合っている(理想的には).

サンプルが2022-06-15のブログポストに載っている.


インストール

インストールに関しては,様々なところで述べられているので,ここでは述べない. 参考にしたサイトを載せておく.beamer,pgf,xcolorなどのLaTeXクラスをインストールすれば良い.

pgfとdvipdfmx

pgfが古いと(?),dvipdfmxを通したときにたくさんエラーが出て,最終的なPDFにも変なページが出力される.pgfの最新版(2.10とか?)をインストールした方がよい.

スライド作成

特定のテーマを使用する

  • \usetheme{metropolis} --- metropolisテーマを指定
  • \usetheme[numbering=fraction]{metropolis} --- ページ表示のオプションを指定(「5/12」のような表記)

文字に色をつける

  • \alert{にょろにょろ},\structure{なんとか}・・・指定された色
  • {\color{blue}青色になる}・・・直接色を指定
  • xcolorというパッケージを[svgnames]というオプションをつけると,ここのリストの名前でカラーをつけることができるようになるらしい.
    \usepackage[svgnames]{xcolor}
    ...
    \color{NavyBlue}

二段組にする(columnsとcolumn)

次のように,columns環境の中に幅を指定したcolumn環境を2つ(左から順に)並べる.ウェブで検索すると分かるが,幅の指定や配置の指定などが少々厄介だが,自分が使うスタイルはあまり多くないので,下の例でほぼ事足りている.

\begin{columns}[T]
  \begin{column}{.45\textwidth}
  ...
  \end{column}
  \begin{column}{.5\textwidth}
  ...
  \end{column}
\end{columns}

description環境のインデント幅

\begin{description}[test] \itemsep 5pt \parskip 0pt \parsep 0pt
  \item{item label here} \mbox{} \\
                ここに何か文章を載せる
\end{description}

こうすることで,「test」という文字の幅のインデントが文章の方に与えられる. ちなみに,「\itemsep 5pt」などを上記の様に書いておけば,項目間の間隔などを調整できる.

enumitem.styを用いたdescription環境

enumitem.styを読み込んでおくと,itemizeやenumerate,descriptionの様々な制御が可能になるらしい. プリアンブルで下のように書いておくとそれをデフォルトとして使ってくれる.

\usepackage{enumitem}
\setlist[description]{font=\sffamily\bfseries\textcolor{RKred},leftmargin=4zw,style=nextline}

appendixのスライド番号を本編に含めない

appendixにいろいろと追加すると,すべてページ数にカウントされてしまうので,それを除きたい. プリアンブルに,

\newcommand{\backupbegin}{
   \newcounter{framenumberappendix}
   \setcounter{framenumberappendix}{\value{framenumber}}
}
\newcommand{\backupend}{
   \addtocounter{framenumberappendix}{-\value{framenumber}}
   \addtocounter{framenumber}{\value{framenumberappendix}} 
}

と書いておき,appendixの後に,\backupbeginと書き, \end{document}の手前に,\backupendと書けばよい. 注) ただし,appendixのページが「15/14」のように,枚数をオーバーしているように見える.

動画

スライドで動画を使用するにはいくつかの方法がある.

  • 最もスマートなのは,PDFファイルに動画が埋め込まれていて,右ボタンを押せばそれが再生されるというものだろう.
  • PDFファイルに埋め込まれていなくても,動画ファイルを参照してあたかもPDFに埋め込まれているようになっていても何も問題はない.
  • 外部の動画ファイルへのリンクを貼るというが,スマートではないが(LaTeXの上での)問題が少ないため楽である.

PDFへ動画を埋め込む

Beamer + movie15.styを,pdflatexでタイプセットすれば可能.ただし,pdflatexは日本語に対応していないようなので,欧文のみのスライド(国際会議用)でないとだめ. また,MacのPreview.appなどは,埋込み動画の再生に対応していないらしいので,Acrobat Readerが必要.

\usepackage{media15}

をプリアンブルに加えておいて,

\includemovie[active=onclick]{0.8\textwidth}{0.6\textheight}{./images/video.avi}

のように指定する.

動画への外部リンク

Beamerに付属している,multimediaパッケージを読み込んでおいて,

 \movie[externalviewer]{Video Title}{video.mp4}

のようにすればよし.ただし,MacのPreview.appでは外部の動画ファイルへのリンクは動作しないので,SkimやAcrobat Readerのようなアプリを使う必要あり.

Tips

block環境の変更 (tcolorbox)

block環境の見栄えがあまりよろしくないので,tcolorbox環境を使う. プリアンブルに,

\usepackage{tcolorbox}
% These options will be applied to all `tcolorboxes`
\tcbset{%
  noparskip,
  colback=gray!10, %background color of the box
  colframe=gray!40, %color of frame and title background
  coltext=black, %color of body text
  coltitle=black, %color of title text 
  fonttitle=\bfseries,
  left=4pt, right=4pt,
  alerted/.style={coltitle=white, 
                  colframe=red!75!black,
                  colback=red!5!white},
  example/.style={coltitle=black, 
                   colframe=green!20,             
                   colback=green!5},
}

と書いておいて,

 \begin{tcolorbox}[alerted,title=クーロンの法則]
      $\bm{r}_0$の位置にある電荷$q$が,$\bm{r}$の点Pにつくる電場は,
      \begin{equation}
       \bm{E}= \frac{q}{4\pi \ez}\frac{\bm{r}-\bm{r}_0}{|\bm{r}-\bm{r}_0|^3}. \nonumber
      \end{equation}
     \end{tcolorbox}

と書けば,なかなかファンシーなtcolorbox環境が作られる.このtcolorbox環境はかなりよい,マニュアルを見ればいろいろと変更できる.

columns環境で左右のtcolorboxの高さをそろえる

   \begin{columns}
    \begin{column}{.5\textwidth}
     \begin{tcolorbox}[equal height group=A,title=H at bond center]
      \begin{center}
       \begin{figure}
        \includegraphics[height=.4\textheight]{./images/img.H-at-bond-center.eps}
       \end{figure}
      \end{center}
      \tcblower
      \begin{itemize}
       \item Si-H length = 1.626 \AA
       \item energy is 0.24 eV lower than H at tetra center
      \end{itemize}
     \end{tcolorbox}
    \end{column}
    %
    \begin{column}{.5\textwidth}
     \begin{tcolorbox}[equal height group=A,title=H at tetra center]
     \begin{center}
      \begin{figure}
       \includegraphics[height=.4\textheight]{./images/img.H-at-tetra-center.eps}
      \end{figure}
     \end{center}
      \tcblower
     \end{tcolorbox}
    \end{column}
   \end{columns}

みたいな感じに,equal height group=Aというオプションを加えておくと,それらの高さが揃う.

番号なしのfootnote

beamerスライドでは,特別な文章などではなく,スライド自体に注釈をつけたい気分のときがある. そんなときは,

\let\thefootnote\relax\footnotetext{Li {\itshape et al.}, J. Nucl. Mater. (2012)}

のようにすれば,番号などは付かずにfootenoteだけが表示される.

参考文献(Refernce)の追加

BibTeXを使用することを強くお薦めする.

  \section*{参考文献}
  \begin{frame}[allowframebreaks]{参考文献}{}
   \bibliographystyle{apalike}
   \bibliography{/Users/kobayashi/Dropbox/Papers_library}
  \end{frame}

このようにして,参考文献ページを追加する.**bibliographystyle{apalike}**としてあるのは,citeの形式を「[1]」のようなものから「[Kobayashi et al. 2012]」のようにするため.スライドで「[1]」とか出されても何のことだか分からんので.

外部ファイルを読み込む

これはBeamerに限ることではないが...

include{hoge}

とすることで,hoge.texをそこに挿入することができる.

大きめの資料を作成する際はファイルを分けて作成した方がタイプセット時間などが省略できるから便利. 目次なんかは二度タイプセットしないと反映されないので注意.

サブセクションの始まりに目次を入れる

次のようなおまじないをプリアンブルに記述する.

\AtBeginSubsection[]
{
   \begin{frame}{目次}
    \tableofcontents[currentsection]
   \end{frame}
}

背景画像を貼る

bg.epsという背景画像のファイルを用意し,

\usebackgroundtemplate{\includegraphics[width=\paperwidth]{bg.eps}}

とする.

印刷用の試料作成

Beamerには印刷モードがあるので,

\documentclass[handout]{beamer}

として,beamerオプションにhandoutを指定すれば良い.pauseなどのスライド内の動的な効果を省いたスライドとして出力される. しかし,このままではページサイズが128mm x 96mmとなっているので,普通に印刷するとすごく小さい.pdfnupというコマンドを使用すると良い.(pdfjamパッケージに入っている)

$ pdfnup --paper a4paper --nup 1x2 --frame true --delta "0.5cm 0.5cm" --scale 0.9 \\
 --offset "0cm 0cm" hoge.pdf

とすると,1枚の紙に2スライドを含むPDFファイルhoge-2x2.pdfが出力される.

$ pdfnup --paper a4paper --nup 2x2 --orient landscape hoge.pdf

とすると,1枚に4スライドで出力.デフォルトでは —orient autoになっているので,変になってしまうので注意.

注) Preview.appで出力する際に「ページサイズに合わせる」みたいなオプションにしておくと,A4に1ページを印刷するのは簡単.

プレゼンテーション

Preview

MacにはPreviewというソフトがあって,それでプレゼンすることは可能.

  • Command+Shift+F:スライドショー開始
  • F:画面全体に拡大
  • I:インデックス表示(全てのスライドを表示)

これだけできるので,プレゼンには申し分ない. しかし,PDFにハイバーリンクを含めておいて外部ファイルとして動画を見せようと思うと何故か出来ない.

Adobe Acrobat

Adobe Acrobatでスライドショーを行えば,埋め込み動画でも再生することができる.もちろん外部リンクも可.実際に海外の研究者はたいていAcrobatでプレゼンを行っている.

Skim

Skim」というソフトなら,ハイパーリンクにも対応している.

  • Command+Option+P:スライドショー開始
  • P:インデックスを表示(縦に一覧表示)

ハイパーリンクで外部ファイルの動画を他のアプリで再生することが可能.