8
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.

PDFをダークモードで閲覧する

Last updated at Posted at 2020-01-28

多くの PDF は白地に黒文字で、夜間にディスプレイで読むのは目に優しくないです。そこで本記事ではPDFをダークモードで読む方法をまとめます。

Windows

SumatraPDF

Adobe Reader にもアクセシビリティから色反転の設定がありますがちょっと面倒です. それよりも SumatraPDF が実は色反転の機能を持っているので, これをおすすめします (たしかストア版は非対応だったはず). コマンドラインからもしくはショートカットにオプション -invert-colors を設定します.

ついでに詳細設定から FixedPageUI GradientColors#3a3a3a 程度に設定し背景色を濃くしておくと快適です. 私はスタートメニューのタイルに SumatraPDF (通常) と SumatraPDF (ダークモード) のふたつのショートカットを設定しました. なお SumatraPDF は同時起動できないため, ライトモードとダークモードが共存することはできません. また, ライトモードからダークモードに切り替えようと思うと一旦 SumatraPDF を終了しダークモードで起動しなおすという手間が発生します.

ブラウザ

Chromium 系のブラウザ (Chrome および Chromium Edge で動作確認しました) を使用しているのなら, stylus をインストールし, 次のスタイルを PDF (正規表現 .*\.pdf) に適用してください.

/* Chromium 用 PDF ダークモード */
embed {
    filter: invert(1) hue-rotate(180deg);
}

ついでに stylus で任意のページに強制ダークモードを適用するといっそう快適です. 気が向いたら別記事にするかもしれません.

なお Firefox の場合 PDF への WebExtention のアクセスがなぜか禁止されており, bugzilla で要望が出ているものの開発者は積極的には対応する気がなさそうです. なのでこの方法は使えません. 一方, pdf.js にダークモードをつくる issue が立っているのですが, こちらもまったく対応される気配がありません.

2021-03-16 追記 こちらのサイトに従って userContent.css を作成すれば Firefox でもダークモードが実現できます (Win10 v20H2, Firefox 86で確認). ただしデフォルトでは普通に表示し必要に応じてダークモードに切り替える, という運用をしたいので, CSS prefers color scheme を使用して (ついでに hue rotate もつけて)

@media (prefers-color-scheme: dark) {
  #viewerContainer > #viewer .page > .canvasWrapper > canvas {
    filter: invert(1) hue-rotate(180deg);
  }
}

とするのはいかがでしょうか. もちろん stylus で一括制御できる Chromium 系の方が便利なのですが, これなら許容範囲かな, と.

Android

Adobe Acrobat Reader がダークモードを備えているのでこれを使えばバッチリです.

8
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
8
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?