Markdown でスライドを書いて PDF 出力する

はじめに

先日、社内勉強会の発表のためにスライドを書くことになりました。

最初は Google スライドで作っていたのですが、私は面倒臭がりなので GUI 操作でポチポチスライドを作るのが面倒になってしまいました。

そこで、なんとか Markdown を書いてそこからスライドを生成できないものかと思い試行錯誤した結果うまくいったので、備忘録も兼ねて方法を残そうと思います。

Markdown でスライドを書く

marp を使えば、 Markdown でいい感じにスライドを書くことができます。
詳しい書き方については README.md を読めば大体分かると思うので割愛します。

書いた Markdownスタンドアローンな HTML として出力する

monolith を使えば、スライド内に埋め込んだ画像などが全て Base64 エンコードされたスタンドアローンな HTML を出力することができます。
以下は、slide.htmlslide-standalone.html として出力する例です。

$ monolith slide.html -o slide-standalone.html

HTML を PDF に変換する

Web ブラウザで先程の手順で出力したスタンドアローンな HTML を表示し、 pdf 出力します。
例えば Google Chrome の場合、印刷の際に送信先を「PDF に保存」にすることで、HTML を PDF ファイルとして出力することができます。

ここまでの手順により、Markdown で書いたスライドを PDF 出力することができました。

おわりに

スライドを書くこと自体に今までは結構抵抗があったのですが、Markdown で書けば楽なことが分かったので、今後はもう少し気軽に書けそうです。