GUIファイルマネージャにおける圧縮済みPDFファイルの扱いについて(2010/1/21現在)
「色々なPDFファイルをgzip/bzip2/XZ圧縮してみるテスト」の実験を行っているときに気付いたのだが、gzipもしくはbzip2圧縮を行ったPDFファイルはその種類が単なるgzip/bzip2圧縮ファイルではなく「圧縮されたPDFファイル」として認識されており、freedesktop.org準拠のGUIファイルマネージャ*1からそのままEvinceやOkularで「開く」ことができる。Adobe Readerではバージョン9.3の時点ではダメだった。
画像はThunarでの一覧表示。
これはfreedesktop.orgのMIMEデータベース(「shared-mime-info」パッケージ)において「application/x-bzpdf」のような種類が定義されており
[引用]ファイル名: /usr/share/mime/packages/freedesktop.org.xml より
<mime-type type="application/x-bzpdf"> <comment>PDF document (bzip-compressed)</comment> <comment xml:lang="be@latin">Dakument PDF (bzip-skampresavany)</comment> (中略) <comment xml:lang="ja">PDF ドキュメント (bzip 圧縮)</comment> (中略) <generic-icon name="x-office-document"/> <glob pattern="*.pdf.bz2"/> </mime-type>
かつ、ビューア側がgzipやbzip2圧縮された状態のPDF文書を直接コマンド行引数として受け取って開くことができるようになっていることの両方によって可能となっている。
Mandriva Linux 2010.0(「shared-mime-info」パッケージのバージョンが0.70)の時点では、XZ圧縮されているPDFファイルは
「XZ archive」として表示され、ビューアに渡すことはできないが、まだXZ Utilsの登場後それほど経過していないことから、将来のバージョンではXZ圧縮されたPDFファイルのMIMEタイプが定義されて渡せるようにはなるものと思われる。とは言え、現状では.pdf.xzファイルをそのままでビューアが受け付けるようにはなっていないので、gzipやbzip2のようにGUIファイルマネージャから一発で.pdf.xzファイルを開けるようにするには、ビューア側が対応しなくてはならない。
bzip2圧縮したときとXZ圧縮したときの圧縮率の違いはファイル依存だが、一例は「色々なPDFファイルをgzip/bzip2/XZ圧縮してみるテスト」に貼り付けた通りで、その違いを大きいとみるか小さいとみるかはそれぞれだが、.pdf.xzファイルが簡単にどのビューアからも開けるようになるまでの間は、圧縮済みのファイルを簡単に開ける使い勝手の良さからbzip2圧縮するのもあり、という気はする。また、「圧縮の余地があるPDFファイルをXZ圧縮してPDFビューアから開く」のような開き方をすればXZ圧縮されたものも比較的容易に開くことはできるので、色々な方法がある中で好きなやり方を選択するのがよい。
関連記事:
使用したバージョン:
- shared-mime-info 0.70
- Adobe Reader 9.3
- Okular 0.9.2
- Evince 2.28.1