USB メモリ活用講座
【基礎編・PDF ビューアのポータブル化-SumatraPDF】

< 最終更新日: 2016-10-29 >

SumatraPDF のインストール

SumatraPDF は,PortableApps.com でも配布されていますが,オリジナルの SumatraPDF 配布サイト の説明には,元々がポータブル向けに開発され,レジストリは使用しないといった説明がありますので,ここではオリジナルを紹介します. 何らかの理由で PortableApps.com 版を使いたいという方は,「LibreOffice/OpenOffice.org のポータブル化」を参考にインストールしてください※1

ここでは,USB メモリに割り当てられたドライブレターが U: であるものとして,SumatraPDF をインストールする手順を簡単に紹介します.

  1. Web ブラウザで SumatraPDF 配布サイト を開き,「ダウンロード」をクリックします.
  2. ポータブル版の ZIP ファイル SumatraPDF-3.1.2.zip をダウンロードします. ダウンロードには約 4MB 以上のアキ容量があるドライブを選んでください. また,64-bit builds のポータブル版 SumatraPDF-3.1.2-64.zip もあるので,間違わないようにしましょう (64-bit 版も気になる方は 64bit 版 SumatraPDF との併用 もご覧ください).
  3. ダウンロードした ZIP ファイルを,USB ドライブ (U:) の適当なフォルダ以下に展開 (解凍) します. ここでは,U:\usr\SumatraPDF 以下に展開するものとします. 展開先にある SumatraPDF.exe を必要に応じてランチャに登録します.
  4. SumatraPDF を起動した画面 (図1) の左上のメニューボタン (横三本線) をクリックするとメニューが表示されます. メニューが日本語表示であれば,6へ進んでください. メニューが日本語表記でなければ,その中から [Settings]-[Change language] とたどります.
    図1・SumatraPDF
    図1・SumatraPDF
  5. 図2のような Change language ダイアログボックスが表示されるので,「Japanese (日本語)」を選択して,[OK] ボタンをクリックします.
    図2・Change languageダイアログボックス
    図2・Change language ダイアログボックス
  6. SumatraPDF の [表示]-[オプション] からオプションダイアログボックス (図3) を開き,「自動的に最新版をチェックする」や「開いたファイルの履歴を残す」などについて,自分なりに適切と思える設定を行いましょう (次の SumatraPDF の設定ファイルの利用SumatraPDF の詳細設定機能 を組み合わせると,よりきめ細かく設定できます).
    図3・SumatraPDFのオプションダイアログボックス
    図3・SumatraPDF のオプションダイアログボックス

SumatraPDF の設定ファイルの詳細設定機能

SumatraPDF のバージョン履歴 (英文) によれば,バージョン 2.3 以降では Advanced Settings (詳細設定) が強化され,SumatraPDF を細かくカスタマイズすることができるようになったようです. ここでは,設定のいくつかを簡単に紹介します. くわしい説明は Customizing SumatraPDF (英文) をご覧ください.

  1. SumatraPDF の設定ファイルの活用 を行っていて,sumatrapdfrestrict.ini の SavePreferences を 0 にしている場合は,SumatraPDF のメニューから [設定] をクリックしたとき,[言語の変更] しか表示されません. SavePreferences を 1 に戻してから,SumatraPDF を起動し直してください.
  2. SumatraPDF のメニューから [設定]-[詳細設定] を選択すると,テキストエディタ (メモ帳) が起動され,SumatraPDF-settings.txt の内容が表示されます. 次の説明を参考に必要と思われる変更を行い,上書き保存をしてエディタを終了させると,設定が反映されます.
    • ESC キーによって SumatraPDF を終了させることができるようにするには,4 行目あたりの EscToExit を次のように変更します.
      EscToExit = true
      
    • SumatraPDF の新しいバージョンが出ているかどうかを自動でチェックしないようにするには,55 行目あたりの CheckForUpdates を次のように変更します.
      CheckForUpdates = false
      
    • SumatraPDF で開いた PDF ファイルの履歴を保存しないようにするには,56 行目あたりの RememberOpenedFile を次のように変更します.
      RememberOpenedFiles = false
      

必要に応じて SumatraPDF の設定ファイルの活用も併用してください. ただし,sumatrapdfrestrict.ini に施す設定と SumatraPDF-settings.txt に施す設定の組み合わせによっては,期待した通りの動作にならないことがあるかもしれません. その場合は,色々と試行錯誤してみてください.

Sumatra PDF の設定ファイルの活用

SumatraPDF のバージョン履歴 (英文) によれば,バージョン 1.7 以降では設定ファイルを用意することで,Sumatra PDF の機能を細かく On/Off 制御することができるようになったようです. ここでは,その利用法を簡単に紹介します.

  1. Web ブラウザで sumatrapdfrestrict.ini の配布ページ を開きます.
  2. 図4のようなページが開かれるので,[Raw] をクリックして sumatrapdfrestrict.ini の内容のみを表示させて,SumatraPDF.exe と同じフォルダに保存します※1
    図4・sumatrapdfrestrict.iniのWebページ
    図4・sumatrapdfrestrict.ini の Web ページ
  3. テキストエディタで sumatrapdfrestrict.ini を開き,必要な設定を行います. 先頭にセミコロン (;) がある行はコメントとして説明文が書かれています. それを参考に,各設定項目を有効 (enable) にしたければ 1 を,無効 (disable) にしたければ 0 を設定していきます. たとえば,次のような設定をすることができます:
    • 更新ファイルがあるかどうかの自動チェックや,障害発生時に開発者へ報告を送信するようなインターネットアクセス機能を無効にするには,16 行目あたりの InternetAccess を次のように変更します:
      InternetAccess = 0
      
    • SumatraPDF のデフォルト設定では,過去に開いた PDF ファイルの履歴を保存する際に,SumatraPDF.exe が置かれたフォルダに sumatrapdfcache というサブフォルダを作成します (SumatraPDF-settings.txt で RememberOpenedFiles が true に設定されている場合). そして,その中に縮小表示 (サムネイル) 用の png 画像を保存します. この機能をオフにするには,34行目あたりの SavePreference を次のように変更します:
      SavePreferences = 0
      
    • ホスト PC のレジストリを利用しないようにするためには,39 行目あたりの RegistryAccess を次のように変更します:
      RegistryAccess = 0
      

ところで,当初の SumatraPDF は PDF 限定の小さく軽快なビューアを目指して開発されていたはずですが,最近では機能拡張が進められ,djvu や EPS など,扱えるファイルの種類が増えたようです. 実行ファイルの大きさも当初は 1MB 程度と,とても小さいことが特長でしたが,最新版は約 6.5MB にまで大きくなってしまいました. それでもまだ,ほかの PDF ビューアに比べれば小さく軽快であるとは感じますが,機能拡張を優先するあまりに,長所が消えていくことにならなければよいがと案じられます.

ちなみに SumatraPDF で EPS ファイルを扱うには,Ghostscript が正常に動作する必要があります. Ghostscript&GSview ポータブル化を行い,Ghostscript が利用できるように環境変数を設定したコマンドプロンプトから SumatraPDF を起動すれば,EPS を開くことができるようになります. もっとも,その時点では EPS を GSview で開くことができるようになっているので,Sumatra PDF が EPS を扱えることにはさほどのメリットは無いようにも感じられます.

【参考】64-bit 版 SumatraPDF との併用

注意: ここから先の説明は,実験的な試行結果の報告で,有効性や必要性があるかどうかまで検証はしていません. あくまで「参考」として読んでください.

最近では,4GB 以上のメモリを搭載し,64bit OS で動作する PC が多くなっています. USB メモリの容量も大きくなり,少しくらいディスクの使用量が増えても,可能な限り 64bit アプリケーションを使いたいという需要もあることと思います.

SumatraPDF のインストールで触れたように,SumatraPDF には 64bit 版も提供されています. 64bit 版は約 7MB とそれほど大きなサイズではありませんので,標準の 32bit 版と一緒に USB メモリに入れておいてもよいかもしれません. せっかくですので,使用している OS に合わせて適切な方が起動されるようにしてみましょう.

  1. SumatraPDF のインストールを参考に,64-bit builds のポータブル版の ZIP ファイルをダウンロードします.
  2. ダウンロードした ZIP ファイルを一時的な作業フォルダ (C:\temp など) に展開します.
  3. SumatraPDF.exe という,標準の 32bit 版と同一名の実行ファイルが展開されるので,SumatraPDF64.exe のように,別の名前に変更します.
  4. 名前を変えた実行ファイル SumatraPDF64.exe を,USB メモリの SumatraPDF.exe と同じフォルダ (U:\usr\SumatraPDF など) に移動/コピーします.
  5. テキストエディタを開き,次のような内容のバッチファイルを入力します※2. 正確にタイプする自信がない方は,ブラウザからエディタへコピー&ペーストすればよいでしょう.
    @echo off
    if "%PROCESSOR_ARCHITECTURE%"=="x86" goto 32BIT
    start %~d0\usr\SumatraPDF\SumatraPDF64.exe %*
    goto :EOF
    :32BIT
    start %~d0\usr\SumatraPDF\SumatraPDF.exe %*
    
  6. 入力し終えたら sumPDF.bat のような名前をつけて,USB ドライブの適当なフォルダ (U:\bin など) に保存します. 「メモ帳」でこのスクリプトを作成する方は,保存時に sumPDF.bat.txt となってしまわないよう気をつけてください (失敗したらリネームすればよいだけですが).

作成した sumPDF.bat を起動すると,OS に合わせて 64bit/32bit 版の SumatraPDF が選択されて起動されるはずです. 腕に自信のある方は,このバッチファイルに Ghostscript が利用できるような環境設定を加えて,SumatraPDF を PS/EPS ビューアとしても使えるようにしてみてはいかがでしょう.

ちなみに,32bit 版を U:\usr\SumatraPDF,64bit 版を U:\usr\SumatraPDF64 という具合に,展開するフォルダを別にして使い分けることも可能です. しかし,その場合は SumatraPDF の詳細設定機能の SumatraPDF-settings.txt や,SumatraPDF の設定ファイルの活用 の sumatrapdfrestrict.ini を,それぞれのフォルダに作成する必要があります. 64bit 版の実行ファイル名を変えて,一つのフォルダに置けば,これらの設定ファイルを共用することができます.