更新: 表紙・目次

執筆・検証: MD Converter編集部

Markdown PDFに表紙を付ける方法|HTML・Pandoc・別PDFを比較

Markdownから作るPDFに表紙を追加する3つの方法を比較します。HTMLと印刷CSS、Pandoc、別PDFの結合について、ソースへの影響、向く用途、目次やページ番号との組み合わせまで解説します。

Markdown PDFの表紙は本文と分けて管理する

Markdownから作るPDFに表紙を付ける方法は、主に次の3つです。

どの方法でも、表紙に必要なのはタイトル、作成者、日付、版番号などの文書を識別する情報です。装飾を増やす前に、「誰が、いつ、何のために作った文書か」が一目で分かる状態を優先します。

方法Markdownへの影響自動化デザイン自由度向く用途
HTMLと印刷CSSHTML要素が加わる高いHTML経由でPDF化する文書
Pandocの挿入ファイル本文を変更しない出力方式によるCLI・CIで繰り返し生成する文書
別PDFを結合本文を変更しない最も高い既存のブランド表紙を使う正式資料

方法1:HTMLと印刷CSSで表紙を作る

HTMLを許可するMarkdown処理系なら、本文の先頭に表紙用の要素を置けます。

<section class="cover-page">
  <p class="cover-label">PROJECT SPECIFICATION</p>
  <h1>プロジェクト仕様書</h1>
  <p>株式会社〇〇 開発部</p>
  <p>Version 2.1 / 2026-04-01</p>
</section>

印刷時だけ1ページを使うようにCSSを指定します。

@media print {
  .cover-page {
    box-sizing: border-box;
    min-height: 100vh;
    display: grid;
    place-content: center;
    gap: 1rem;
    text-align: center;
    break-after: page;
  }
}

break-after: pageは表紙の直後で改ページする指定です。本文先頭にもbreak-beforeを設定すると空白ページが生じることがあるため、同じ境界の改ページ指定は1つにします。詳しくはMarkdown PDFで改ページするCSSを参照してください。

この方法は自由度が高い一方、HTMLを削除する処理系では使えません。また、GitHubなどの画面表示では印刷CSSが適用されず、PDFと見た目が異なる場合があります。

方法2:Pandocで表紙用ファイルを挿入する

Pandocでは、本文とは別に管理したファイルを--include-before-body(短縮形-B)で先頭へ挿入できます。挿入ファイルは、出力形式に合わせて用意します。

HTMLを作ってブラウザからPDF保存する場合:

pandoc body.md \
  --standalone \
  --include-before-body=cover.html \
  --css=print.css \
  -o document.html

XeLaTeXで直接PDFを作る場合:

pandoc body.md \
  --include-before-body=cover.tex \
  --pdf-engine=xelatex \
  -o document.pdf

HTML用のcover.htmlをLaTeX経由のPDFへそのまま渡すのではなく、HTML出力にはHTML、LaTeX出力にはTeXを使います。これを分けないと、表紙が無視されたり、生のタグが残ったりします。

Pandoc方式は、同じ書式の仕様書や報告書をCIで繰り返し生成するときに向いています。タイトルや日付などをYAMLメタデータから渡す設計にすると、表紙用ファイルを文書ごとに複製せずに済みます。

方法3:表紙PDFと本文PDFを結合する

PowerPoint、Illustrator、Wordなどで管理している正式な表紙がある場合は、表紙だけをPDFにし、Markdownから生成した本文PDFの前へ結合する方法があります。

この方法の利点は、ブランドガイドに沿った図形、写真、ロゴを自由に配置できることです。一方で、本文を更新するたびに結合し直す必要があり、版の取り違えが起きやすくなります。

結合前に次を確認します。

表紙に載せる情報を決める

表紙へ載せる情報は、文書の受け渡しと版管理に必要なものへ絞ります。

情報記載例判断のポイント
タイトルAPI仕様書文書の種類と対象を具体的にする
サブタイトル決済基盤リニューアルタイトルだけで識別できない場合に加える
組織・作成者開発部 / 山田太郎問い合わせ先が必要な文書で使う
日付2026-04-01公開日か提出日かを制作ルールで統一する
版番号Version 2.1更新される文書では本文と一致させる
取扱区分社外秘実際の情報管理ルールがある場合だけ使う

長い説明文、目次、免責事項まで表紙へ詰め込むと、文書の識別が難しくなります。概要は本文の最初へ、章一覧は目次へ分けます。

表紙・目次・ページ番号の順序

長い文書では、一般に次の順で構成します。

表紙にページ番号を表示するか、本文を1ページから始めるかは、PDF生成方式によって対応が異なります。ブラウザの印刷機能は連番の開始位置を細かく制御しにくいため、厳密なノンブルが必要ならPandocや組版エンジン、PDF後処理を検討します。Markdown PDFにページ番号を付ける方法も確認してください。

目次は表紙のデザインではなく、Markdownの見出し階層から作ります。見出しレベルを飛ばさず、章名だけで内容が分かるようにすると、表紙から本文まで一貫した文書になります。

よくある質問

表紙のためだけにMarkdownへHTMLを書いてもよいですか?

配布先の処理系がHTMLを許可し、HTML出力を主に使うなら現実的です。同じMarkdownをGitHub、CMS、別の変換器でも使う場合は、表紙用ファイルを分離したほうが互換性を保ちやすくなります。

表紙にロゴや画像を入れてもよいですか?

入れられますが、印刷解像度、縦横比、利用許諾を確認します。ロゴは装飾ではなく識別要素なので、本文タイトルより目立たせすぎないほうが読みやすくなります。

表紙の後に空白ページができます

表紙のbreak-afterと、本文先頭のbreak-beforeが重複していないか確認します。表紙要素が用紙の印刷可能領域よりわずかに大きい場合も、追加ページが発生します。Markdown PDFの空白ページを消す方法に切り分け手順があります。

表紙を本文とは別に編集する

Markdown Document Converterでは、表紙エディターでテンプレート、文字、図形、ロゴを調整し、Markdown本文を変更せずにPDFへ追加できます。

関連記事