Pandocを使ったMarkdownからpdfへのファイル変換(2025年版)


はじめに

もうだいぶ前からそうなのかもしれませんが、色々なところでドキュメントを作成するときに、Markdownの記法を使うことによって構造化された形式にまとめられる機会が増えてきました。

現在の会社でもConfluenceが使えるようになり、少なくとも私はConfluenceの中にMarkdownを使って色々なドキュメントを書き連ねているのですが、唯一の弱点は、出来上がったConfluenceドキュメントをpdfで共有するときの日本語フォントがものすごく貧弱で、これはドキュメントの可読性としてどうなんだろうと思い、同じMarkdownで書くのであればもうそのままpdfにしてしまったほうがいいんじゃないの? と思って色々と試行錯誤をしてみました。

すると、Markdown形式のファイルを、pdfを含めた様々な形式に変換することのできるPandocというライブラリが存在することを知ったので、早速試してみることにしました。

この記事は、2025年時点での情報となります。

インストール手順

以下は、Pandocを導入する手順です。ちなみに環境は以下の通りです。

  • MacBook Air (M2, 2020)
  • macOS Sequoia 15.4 (Build 24E248)

Pandocをインストールする

まずは以下のコマンドでPandoc本体をインストールします。

brew install pandoc

LaTeXの日本語環境をインストールする

PandocはLaTeXの環境を用いてファイル変換を行うため、LaTeXをインストールしていくのですが、macOS向けであればMacTeXがあるものの、ファイルサイズが大きすぎてインストールするのがものすごく大変なため、今回は軽量なBasicTeXをインストールしていきます。以下のコマンドを実行します。

brew install --cask basictex

インストールが完了したら、 .bash_profile に対して以下を追記してパスを通します。

export PATH=/Library/TeX/texbin:$PATH

ここまできたら、最新版にアップデートします。ちなみに sudo を使用するので管理者権限が必要になります。

sudo tlmgr update --self --all

さらに日本語環境や、その他追加モジュールをインストールするのですが、ちょっとインストール完了までに時間がかかります。

sudo tlmgr install collection-langjapanese collection-luatex collection-latexextra

これでPandocを用いてファイルを変換する準備が完了しました。

試しにMarkdown形式のドキュメントをpdfに変換してみる

準備が完了したので早速Markdown形式のドキュメントをpdfに変換してみましょう。以下のコマンドを実行します。

pandoc input.md -o output.pdf -V documentclass=ltjarticle --pdf-engine=lualatex

すると、LaTeXを用いた形でよく見かけるようなpdfファイルが出来上がっているはずです。ちなみにさらに引数を与えてあげることで、目次をつけたりしてくれます。

pandoc input.md -o output.pdf -V documentclass=ltjarticle --pdf-engine=lualatex -N --toc --toc-depth=3 

いかがでしょうか。

Markdown形式に一度慣れてしまえば、ConfluenceやMicrosoft Wordにはコピー & ペーストすることができますし、美しいpdfに変換することも上記の手順で可能なので、ドキュメントを何を使って書こうかということに悩むことはなくなるのではないのかなと感じました。

ちなみに私はMarkdown形式のドキュメントを作成する際には、オープンソースのMarkEdit.appを使用しています。

ぜひ試してみていただき、楽しいドキュメンテーションライフを。

カテゴリー: Work タグ: , , パーマリンク