VSCodeを使ってWord文書にきれいなシンタックスハイライトを付ける方法

レポートを書くときとかにVSCodeで書いたコードをWordに貼り付けることがあるけど、VSCodeのテキストをそのままWordに貼り付けると、スクロールしたときに白線がちらつく。

VSCodeからWordにテキストを貼り付けると、スクロール時に白線がちらつくことを説明した画像
VSCodeからWordにテキストを貼り付けるとギザギザする

原因は、VSCodeからコピーしたテキストには網掛けの設定がかかっていること。

背景色を段落の網掛けで再現しようとしたせいでちらついてしまうわけです。

デザインタブ・ページ罫線ボタン・網掛けタブ・背景色ドロップダウン
デザイン > ページ罫線 > 網掛け > 背景色

なので、この設定を

  • (タブ右下)設定対象 → 段落
  • 背景色 → 色なし

と設定してあげればちらつきはなくなる。

でもこれだと背景色がなくて見づらいので、テーブルを使ってあげる。

挿入・表・1×1のサイズで表を作成している
挿入 > 表 > 1×1サイズ

表を作成したら、表に対して背景色を適用してあげる。

作成した表に対して、テーブルデザイン・塗りつぶし・その他の色を付ける
作成した表に対して、テーブルデザイン > 塗りつぶし > その他の色

VSCodeから色をスポイトして、表を塗りつぶす。

Power ToysのColor Picker機能を使って、VSCodeから色をスポイトしている様子

今回は#22272Eらしい

塗りつぶし色を設定するダイアログで、スポイトしたRGB値を設定する様子
色の設定、まあ別に厳密にスポイトする必要も無いんだけどね……

あとはさっきのテキストを貼り付けて完成!

塗りつぶしたテーブルの上に網掛けをはずしたテキストを貼りつけた様子
完成!

と、ここまでやってきてなんですが、塗りつぶしたテーブルの上にそのままVSCodeからのテキストを貼り付けても、見た目上の結果は変わりません。

めんどくさい場合はそちらを推奨。

※余談

印刷を視野に入れてる場合は、Lightテーマでやるといいかも