LaTeX Beamerで御社サイト風のスライドを作る


概要

御社インターンシップの面接でプレゼンテーションを求められたので,LaTeX Beamerで御社サイトに似たデザインのスライドを作成しました.

参考

「フラット化」前半と「その他,基本的なこと」はほぼ以下のページの内容そのままです.
Beamer — Tasuku Soma's webpage - 数理情報第7研究室 - 東京大学

御社サイトから色を収集しましょう.

\definecolor{OnshaSky}{HTML}{E6ECFE}
\definecolor{OnshaSmoke}{HTML}{9EB4DB}
\definecolor{OnshaBlue}{HTML}{1D3994}
\definecolor{OnshaMarine}{HTML}{4070FF}
\definecolor{OnshaRed}{HTML}{FF0033}
\definecolor{OnshaPurple}{HTML}{7B0099}

収集した色をいい感じに適用しましょう.
\setbeamercolor{something}{key=value}でsomethingのkeyの色をvalueに設定できます.

\setbeamercolor{structure}{fg=OnshaBlue}
\setbeamercolor{title}{fg=white,bg=OnshaRed}
\setbeamercolor{author}{fg=OnshaBlue}
\setbeamercolor{institute}{fg=OnshaBlue}
\setbeamercolor{date}{fg=OnshaBlue}
\setbeamercolor{frametitle}{fg=white,bg=OnshaMarine}
\setbeamercolor{section in toc}{fg=OnshaBlue}
\setbeamercolor{alerted text}{fg=OnshaRed}

フラット化

御社に合わせてスッキリとしたフラットデザインにしましょう.
\setbeamertemplateコマンドでデザインを変更することができます.

% タイトルの影を消す
\setbeamertemplate{title page}[default][colsep=-4bp,rounded=true]
\setbeamerfont{title}{size=\Large}
% 箇条書きをシンプルにする
\useinnertheme{circles}
% ナビゲーションシンボルを消す
\setbeamertemplate{navigation symbols}{}
% フッターにスライド番号のみを表示
\setbeamertemplate{footline}[frame number]

枠付きのblock環境を使いたいと思ったのですが,beamer framed blockとかで検索したところ存在しないようです.
そんなときは\defbeamertemplateコマンドで自前のデザインを定義しましょう.
様々な色付き枠を作成できるtcolorboxパッケージを使用します.

% framed block設定
\defbeamertemplateparent{blocks}[framed]{block begin,block end}[1][]
{[#1]}
\defbeamertemplate{block begin}{framed}[1][]{
  \begin{tcolorbox}[%
    colback=white,%
    colframe=OnshaSmoke,%
    colbacktitle=OnshaSky,%
    coltitle=OnshaBlue,%
    coltext=black,%
    sharp corners,%
    boxrule=1pt,%
    title=\insertblocktitle
    ]%
    \vskip\smallskipamount%
    \raggedright%
    \usebeamerfont{block body}%
}
\defbeamertemplate{block end}{framed}[1][]{\end{tcolorbox}}

作成したブロック環境を設定しましょう.

\setbeamertemplate{blocks}[framed]

その他,基本的なこと

フォントと行間を調節しましょう.

% フォントファミリー設定
% 英文をサンセリフ体に
\renewcommand{\familydefault}{\sfdefault}
% 数式はサンセリフ体にしない
\usefonttheme{professionalfonts}
% 日本語をゴシック体に
\renewcommand{\kanjifamilydefault}{\gtdefault}
% フォントウェイト設定
% タイトル部は太字
\usefonttheme{structurebold}
% alertは太字
\setbeamerfont{alerted text}{series=\bfseries}
% 目次は太字にしない
\setbeamerfont{section in toc}{series=\mdseries}
% フレームタイトルは太字
\setbeamerfont{frametitle}{size=\Large}
% タイトルは太字
\setbeamerfont{title}{size=\LARGE}
% フォントサイズ設定
% 日付は小文字
\setbeamerfont{date}{size=\small}
% ネストされたitemize,enumerate環境で小文字にしない
\setbeamerfont{itemize/enumerate subbody}{size=\normalsize}
% 行間を広げる
\renewcommand{\baselinestretch}{1.2}
% 別行立て数式環境の行間も広げる
\def\defaultabovedisplayskip{8pt}
\def\defaultbelowdisplayskip{8pt}
\setlength{\abovedisplayskip}{\defaultabovedisplayskip}
\setlength{\belowdisplayskip}{\defaultbelowdisplayskip}

これで御社っぽいスライドができました.
このほか,定理の見出しを日本語にするとか色々あるので,上に挙げた参考ページを見るとよいでしょう.

(余談)テーマファイルの作成

今までのコードをテーマファイルに分離して,\usetheme{Onsha}で適用できるようにしてみましょう.
モジュールはできるだけ疎結合にしたいですからね.
実は,\usetheme{Onsha}\usepackage{beamerthemeOnsha}に展開されます.
つまり,beamerthemeOnsha.styというスタイルファイルを作って,パスの通った場所に配置すればいいのです.
beamerthemeOnsha.styの先頭は

\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{beamerthemeOnsha}

としておくといいでしょう.

最後に

私は実際には,タイトルページだけInkscapeを使ってかぎりなく御社サイトに似せたものを作成しました.
パワポやKeynoteでいいといえばそれまでですが,どうしてもLaTeX Beamerで作りたい人は参考にしてみてください.