理系学生日記

おまえはいつまで学生気分なのか

markdownをpandocでdocxに変換する

MarkdownのファイルをベースにPull/Merge Requestでやりとりすることが難しいケースというのは存在します。 そういった場合、指摘やそれに対する修正は、変更履歴の保存の容易なWord形式を使うのが楽でしょう。

そして、こういったフォーマット間での変換処理にはPandocが便利です。

$ pandoc --version
pandoc 2.14.2
Compiled with pandoc-types 1.22, texmath 0.12.3.1, skylighting 0.11,
citeproc 0.5, ipynb 0.1.0.1
User data directory: /Users/kiririmode/.local/share/pandoc
Copyright (C) 2006-2021 John MacFarlane. Web:  https://pandoc.org
This is free software; see the source for copying conditions. There is no
warranty, not even for merchantability or fitness for a particular purpose.

Markdownからdocxへの変換

Pandocでdocxへ変換する場合、変換後のdocxの書式や各種プロパティはreference.docxが使われることになっています。 フォント等を変更したい場合は、まずこのreference.docxにその変更を反映する必要があります。

reference.docxは以下のコマンドで生成できます。

$ pandoc -o custom-reference.docx --print-default-data-file reference.docx

このコマンドで生成したcustom-reference.docxを開きフォント等を変更し、再度保存しておきます。 あとは、そのファイルを--reference-docオプションで指定しつつ、 変換処理を行えば良いでしょう。

$ pandoc --from=markdown --to=docx --output=hoge.docx --reference-doc=../custom-reference.docx hoge.md