Makefile を使った Beamer のプレゼン用ファイルと印刷用ファイルの作成

LaTeX Beamer で作成されたプレゼン資料は、アニメーションごとにスライド数が増えるため、印刷には向きません。そのため、プレゼン用と印刷用に２つのPDFファイルを作成する方法を示します。

さらに、プレゼン用は背景を黒+文字を白、印刷用は背景を白+文字を黒にするなどの変更もしています。

version パッケージを使うと、印刷しない写真やスライドなども設定できます。

なお、MacOSX 上で、Fink によってインストールされた texlive と r-base を使用しています。

必要なファイル

- Makefile
- forPresentation.tex
- forPrint.tex
- 20160325.tex



```mf:Makefile
CONFERENCE=Presentation

REMOVE=rm -f
COPY=rsync -avz 
MKDIR=mkdir -p
BUILDDIR=Documents/temp.build
LATEX=/sw/bin/platex -kanji=utf8 -shell-escape
BIBTEX=/sw/bin/bibtex
DVIPDFMX=/sw/bin/dvipdfmx


all: presentation print

presentation: 
	-mkdir -p ~/$(BUILDDIR)/$(CONFERENCE)
	-$(COPY) *.tex ~/$(BUILDDIR)/$(CONFERENCE)
	-cd ~/$(BUILDDIR)/$(CONFERENCE) && $(LATEX) forPresentation.tex && $(BIBTEX) forPresentation
	cd ~/$(BUILDDIR)/$(CONFERENCE) && $(LATEX) forPresentation.tex && $(LATEX) forPresentation.tex && $(DVIPDFMX) forPresentation.dvi

print: 
	-mkdir -p ~/$(BUILDDIR)/$(CONFERENCE)
	-$(COPY) *.tex ~/$(BUILDDIR)/$(CONFERENCE)
	-cd ~/$(BUILDDIR)/$(CONFERENCE) && $(LATEX) forPrint.tex && $(BIBTEX) forPrint
	cd ~/$(BUILDDIR)/$(CONFERENCE) && $(LATEX) forPrint.tex && $(LATEX) forPrint.tex && $(DVIPDFMX) forPrint.dvi


check:
	cd ~/$(BUILDDIR)/$(CONFERENCE) && open *.pdf

clean:
	$(REMOVE) .*#
	cd ~/$(BUILDDIR)/$(CONFERENCE) && $(REMOVE) -f *.gl* *.lo* *.toc *.acn *.aux *.dvi *.ist *.bbl *.blg

install:
	$(COPY) ~/$(BUILDDIR)/$(CONFERENCE)/*.pdf ./

.SUFFIXES: .tex .eps .jpg .png .pdf

.PHONY: all clean install check presentation print
```

(細かい説明) LaTeX は、作業中にたくさんの中間ファイルを作ります。これによりフォルダ内にたくさんのファイルが作成されます。このため、いったんファイルをコピーし、別ディレクトリで LaTeX コマンドを実行するようにしています。

(細かい説明2) Spotlight は、検索のためにインデックスファイルを作成します。しかし、フォルダ名が .noindex や .build で終わるフォルダはインデックスを作成しません。上記のビルドする環境では、temp.build フォルダを作成することで無駄なインデックス作成をしないようにしています。

```latex:forPrint.tex
\documentclass[dvipdfmx,12pt,t,handout]{beamer}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{version}
\includeversion{shashin} % ここを excludeversion にすると、印刷されない写真やスライドを指定できます。
\usepackage{multicol}

\usepackage{graphicx}
\setbeameroption{hide notes}
\setbeamertemplate{note page}[plain]

% get rid of junk
\usetheme{default}
\beamertemplatenavigationsymbolsempty
\hypersetup{pdfpagemode=UseNone} % don't show bookmarks on initial view

% named colors
\definecolor{offwhite}{RGB}{249,242,215}
%\definecolor{foreground}{RGB}{255,255,255}
\definecolor{foreground}{RGB}{0,0,0}
%\definecolor{background}{RGB}{24,24,24}
%\definecolor{background}{RGB}{0,0,0}
\definecolor{background}{RGB}{255,255,255}
\definecolor{title}{RGB}{0,0,0}
\definecolor{gray}{RGB}{155,155,155}
\definecolor{subtitle}{RGB}{155,155,155}
\definecolor{hilight}{RGB}{155,155,155}
\definecolor{vhilight}{RGB}{155,155,155}
\definecolor{lolight}{RGB}{155,155,155}
%\definecolor{green}{RGB}{125,250,125}

% use those colors
\setbeamercolor{titlelike}{fg=title}
\setbeamercolor{subtitle}{fg=subtitle}
\setbeamercolor{institute}{fg=gray}
\setbeamercolor{normal text}{fg=foreground,bg=background}
\setbeamercolor{item}{fg=foreground} % color of bullets
\setbeamercolor{subitem}{fg=gray}
\setbeamercolor{itemize/enumerate subbody}{fg=gray}
\setbeamertemplate{itemize subitem}{{\textendash}}
\setbeamerfont{itemize/enumerate subbody}{size=\footnotesize}
\setbeamerfont{itemize/enumerate subitem}{size=\footnotesize}
\setbeamercolor{section in toc shaded}{fg=gray}
\setbeamercolor{section in toc}{fg=hilight}
\setbeamercolor{subsection in toc shaded}{fg=gray}
\setbeamercolor{subsection in toc}{fg=lolight}

% page number
\setbeamertemplate{footline}{%
    \raisebox{5pt}{\makebox[\paperwidth]{\hfill \makebox[20pt]{\color{gray}
          \scriptsize\insertframenumber}}}\hspace*{5pt}}

% add a bit of space at the top of the notes page
\addtobeamertemplate{note page}{\setlength{\parskip}{12pt}}

% a few macros
\newcommand{\subt}[1]{{\footnotesize \color{subtitle} {#1}}}
\renewcommand{\kanjifamilydefault}{\gtdefault} % 日本語書体をゴシック体に

% title info
\title{地域リハビリ}
\subtitle{Community Rehabilitation}
\author{馬場美彦}
\institute{博士課程２年}
\date{2016年3月25日}
%\AtBeginSubsection[]
%{
%  \begin{frame}<beamer>
%    \frametitle{目次}
%    \tableofcontents[currentsection,currentsubsection]
%  \end{frame}
%}


\begin{document}

\include{20160325}

\end{document}
```


```latex:forPresentation.tex
\documentclass[dvipdfmx,12pt,t]{beamer}
\usepackage[english]{babel}
\usepackage{tikz}
\usepackage{version}
\includeversion{shashin}
\usepackage{multicol}

\usepackage{graphicx}
\setbeameroption{hide notes}
\setbeamertemplate{note page}[plain]

% get rid of junk
\usetheme{default}
\beamertemplatenavigationsymbolsempty
\hypersetup{pdfpagemode=UseNone} % don't show bookmarks on initial view

% named colors
\definecolor{offwhite}{RGB}{249,242,215}
\definecolor{foreground}{RGB}{255,255,255}
\definecolor{background}{RGB}{0,0,0}
\definecolor{title}{RGB}{107,174,214}
\definecolor{gray}{RGB}{155,155,155}
\definecolor{subtitle}{RGB}{102,255,204}
\definecolor{hilight}{RGB}{102,255,204}
\definecolor{vhilight}{RGB}{255,111,207}
\definecolor{lolight}{RGB}{155,155,155}
%\definecolor{green}{RGB}{125,250,125}

% use those colors
\setbeamercolor{titlelike}{fg=title}
\setbeamercolor{subtitle}{fg=subtitle}
\setbeamercolor{institute}{fg=gray}
\setbeamercolor{normal text}{fg=foreground,bg=background}
\setbeamercolor{item}{fg=foreground} % color of bullets
\setbeamercolor{subitem}{fg=gray}
\setbeamercolor{itemize/enumerate subbody}{fg=gray}
\setbeamertemplate{itemize subitem}{{\textendash}}
\setbeamerfont{itemize/enumerate subbody}{size=\footnotesize}
\setbeamerfont{itemize/enumerate subitem}{size=\footnotesize}
\setbeamercolor{section in toc shaded}{fg=gray}
\setbeamercolor{section in toc}{fg=hilight}
\setbeamercolor{subsection in toc shaded}{fg=gray}
\setbeamercolor{subsection in toc}{fg=lolight}

% page number
\setbeamertemplate{footline}{%
    \raisebox{5pt}{\makebox[\paperwidth]{\hfill \makebox[20pt]{\color{gray}
          \scriptsize\insertframenumber}}}\hspace*{5pt}}

% add a bit of space at the top of the notes page
\addtobeamertemplate{note page}{\setlength{\parskip}{12pt}}

% a few macros
\newcommand{\subt}[1]{{\footnotesize \color{subtitle} {#1}}}
\renewcommand{\kanjifamilydefault}{\gtdefault} % 日本語書体をゴシック体に

% title info
\title{地域リハビリ}
\subtitle{Community Rehabilitation}
\author{馬場美彦}
\institute{博士課程２年}
\date{2016年3月25日}
\AtBeginSubsection[]
{
  \begin{frame}<beamer>
    \frametitle{目次}
    \tableofcontents[currentsection,currentsubsection]
  \end{frame}
}


\begin{document}

\include{20160325}

\end{document}
```

```latex:20160325.tex
\begin{frame}
  \titlepage
\end{frame}

\begin{frame}
  \frametitle[pausesections]{目次}

  \tableofcontents
  % You might wish to add the option [pausesections]

\end{frame}


\section{はじめに}

\subsection{背景}
\begin{frame}
  \frametitle{背景}

ここに書きます。

\end{frame}
```

あとは

`$ make && make check`

するだけです。

こちらがプレゼン用。45ページあります。

![forPresentation.png](https://qiita-image-store.s3.amazonaws.com/0/118479/8b237bdf-2d27-5cce-bc93-043df0b08566.png)


こちらは印刷用。25ページになり、色も印刷しやすくなっています。

![forPrint.png](https://qiita-image-store.s3.amazonaws.com/0/118479/0479fe48-aa9e-59e7-d331-64c38989ba43.png)

なお、現状ではタイトル、著者、日付をそれぞれに書いています。


ま、そもそも私は、配布資料は文章化しているのでこれを配布することはないのですが、、