5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

md-to-pdfのコマンドラインオプションと実行例

Posted at

md-to-pdfでHTML出力する方法がないかなと調べたら、あっさりコマンドラインオプションで指定方法が見つかったので、ついでにコマンドラインオプションについてメモ。併せてUsageで表示される実行例についてもメモ。Usageはmd-to-pdf 4.0.1版の出力に基づいています。

md-to-htmlな感じのことができるし、それ以外にもいろんなことができます。

コマンドラインオプション

md-to-pdf -h するまでもなく、md-to-pdfのサイトのUsageに書かれています。

Usage
$ md-to-pdf [options] path/to/file.md

このあとに続くオプションの説明と、Optionsの指定値の例をまとめて雑に和訳。

オプション 説明 指定例
-h, --help Usage情報の出力
-v, --version バージョン出力
-w, --watch 現在のファイル(群)をWatch
--watch-options Chokidarのwatch呼び出し時のオプション
--basedir ファイルサーバーが提供するベースディレクトリ path/to/folder
--stylesheet ローカルまたはリモートのスタイルシートのパス(複数回指定可能) path/to/style.css
https://example.org/stylesheet.css
--css スタイルシート文字列 body { color: tomato; }
--body-class Bodyタグに追加するクラス(複数回指定可能) markdown-body
--page-media-type ページでエミュレートするメディアタイプ(デフォルト:screen) print
--highlight-style highlight.jsで使用するハイライトスタイル(デフォルト:github) monokai
solarized-light
--marked-options marked.jsのカスタムオプションを(JSON文字列で)指定 '{ "gfm": false }'
--pdf-options 生成されるPDFのカスタムオプションを(JSON文字列で)指定 '{ "format": "Letter", "margin": "20mm", "printBackground": true }'
--launch-options Puppeteerのカスタム起動オプションを指定 '{ "args": ["--no-sandbox"] }'
--port HTTPサーバーの実行ポートを指定 3000
--md-file-encoding Markdownファイルのファイルエンコーディングを指定 utf-8
windows1252
--stylesheet-encoding スタイルシートのファイルエンコーディングを指定 utf-8
windows1252
--as-html 代わりにHTMLを出力
--config-file JSONまたはJSの構成(configuration)ファイルを指定 path/to/config.json
--devtools PDFを作成する代わりにブラウザーでdevtoolsを開く

実行例

md-to-pdf -h するとオプションに続いて実行例(Examples)セクションも表示されるので、こちらも雑に和訳。

./file.mdを変換し./file.pdfとして保存。

$ md-to-pdf file.md

カレントディレクトリのすべてのMarkdownファイルを変換。

$ md-to-pdf ./*.md

カレントディレクトリ以下のすべてのマークダウンファイルを変換。

$ md-to-pdf ./**/*.md

変換とWatchモード(訳者注:Markdownファイルの変更を監視)の有効化。

$ md-to-pdf ./*.md -w

変換とカスタムオプションを指定してWatchモードの有効化。

$ md-to-pdf ./*.md --watch --watch-options '{ "atomic": true }'

path/to/file.mdを異なるベースディレクトリに変換。

$ md-to-pdf path/to/file.md --basedir path

file.mdcustom-markdown.cssを使って変換。

$ md-to-pdf file.md --stylesheet custom-markdown.css

file.mdMonokaiテーマデコードハイライトして変換。

$ md-to-pdf file.md --highlight-style monokai

file.mdをカスタムページオプションで変換。

$ md-to-pdf file.md --pdf-options '{ "format": "Letter" }'

file.mdを変換しHTML形式の中間ファイルとして保存。

$ md-to-pdf file.md --as-html

おわりに

Classmethodさんの『MarkdownをPDFに変換する「md-to-pdf」は痒いところに手が届く素敵ツール | DevelopersIO』を読んで、雑にmd-to-pdfに入門中です。PDF変換中に生成してる(と思われる)HTMLファイルを見たいなと思ってドキュメントを見ることにしたのですが、あっさり冒頭近くのコマンドラインオプションで指定方法が見つかったので、ついでにまとめてみました。あらためて思いましたが、「やってみた」を読んでやってみたら、次にすることはドキュメント確認ですね。

ということで無事に md-to-pdf file.md --as-html でHTMLファイルを生成できたのですが……違う、そうじゃない。僕はページのヘッダー/フッター部がどんな出力に変換されているのか知りたかったのに、それはHTMLに含まれてないじゃないか。まあpuppeteerのpage.pdfオプションとして引渡す値らしいので、考えてみたらHTMLに含まれていなくて当然なのですが。そういうわけで勉強は続く。

参考

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?