MarkdownをPDF化する際にページ数を出力する方法

目的

Markdown で記載した資料をPDF化した際にページ番号をつけたい。

環境情報

OS:Windows10
Visual Studio Code:1.41.1

やり方

1.拡張機能の[Markdown PDF]をインストール。
・サイドバーの[Extentions]をクリックします。
 表示された検索バーに、[Markdown PDF]と入力します。
 検索結果に表示された[Markdown PDF]をクリックし、インストールします。

f:id:Tk24:20200122154129j:plain

2.PDFファイル作成
・「Ctrl」+「Shift」+「P」を押し、「export」と入力します。
 表示された「Markdown PDF:Export(PDF)」を選択します。 f:id:Tk24:20200122154448j:plain

・もしくは、右クリックからでも選択できます。
f:id:Tk24:20200122154459j:plain

PDFが出力されたので、確認します。
こんな感じに、ページ数が出力されているはずです!

f:id:Tk24:20200122155742j:plain

注意

MarkdownをPDFかする想定で書いた際に、改ページするために以下のcssコードを利用すると思います。

<div style="page-break-before:always"></div>

その際に、次の一行を空行にしないとMarkdownの記載がおかしくなる場合があるみたいです。
私の場合は、#などがそのまま出力されていました。

ヘッダー、フッターの編集方法。

デフォルト設定のままだと、ヘッダーに「ファイル名」「出力日時」、フッターに「ページ番号」が入ります。しかし、必要のない情報は出力したくないのでヘッダーとフッターの設定を編集します。

  • 「ファイル」→「基本設定」→「設定」をクリックします。
    設定画面が開いたら、以下のどちらかを入力します。
    ・ ヘッダーを編集したい場合:headerTemplate
    ・ フッターを編集したい場合:footerTemplate

    「setting.jsonで編集」をクリックします。

f:id:Tk24:20200122155900j:plain

 以下の情報を元にヘッダー、フッター設定を変更します。

  • ヘッダーのデフォルト設定のパラーメータ情報。
    <span class='date'></span> : 日付
    <span class='title'></span> : Markdown ファイル名
    <span class='url'></span> : Markdown フルパスファイル名

  • 実際のデフォルト設定(ヘッダー)
    "markdown-pdf.headerTemplate": "<div style=\"font-size: 9px; margin-left: 1cm;\"> <span class='title'></span></div> <div style=\"font-size: 9px; margin-left: auto; margin-right: 1cm; \"> <span class='date'></span></div>",

  • フッターのデフォルト設定のパラーメータ情報。
    <span class='pageNumber'></span> : 現在のページ番号
    <span class='totalPages'></span> : ドキュメントの総ページ数

  • 実際のデフォルト設定(ヘッダー)
    "markdown-pdf.footerTemplate": "<div style=\"font-size: 9px; margin: 0 auto;\"> <span class='pageNumber'></span> / <span class='totalPages'></span></div>",

私はヘッダーが必要なかったので、丸ごと削除しました!

参考

https://github.com/yzane/vscode-markdown-pdf/blob/master/README.ja.md#%E6%A9%9F%E8%83%BD