情報処理技術者試験の過去問題をNetWalkerにそれっぽく表示させてみた

10/17(日)に実施された情報処理技術者試験の問題が公開されているのでさっそく見てみたところ、やっぱり重い。いつものことですが*1
で、このPDFをNetWalkerに入れて外出先でも見られるようにしたかったのですが、NetWalkerで過去問PDFを開くとページを切り替える度に「読み込み中...」の表示で止まる。

NetWalkerに入っているevinceというPDFビューアはAdobe Readerのようにフルスクリーン表示や回転表示ができるので、左に90度回転した状態でフルスクリーンにすると画面に合わせて目一杯の大きさに表示されます。しかし何度も言いますが重いです。

ここから本題。
情報処理技術者試験の過去問題PDFをNetWalkerで表示しやすい状態に加工します。

やりたいことは、

  1. PDFから画像を取り出したい
  2. 取りだした画像を縮小・回転したい
  3. 修正した画像を閲覧しやすい形式にまとめたい

の3つです。

最後の「修正した画像を閲覧しやすい形式にまとめたい」は、もう一度PDF形式に戻せば実現できそうですが、
Evinceでzip書庫内部の画像ファイルを閲覧する - Sickly Life はてな版
に書いてあるとおり、画像を格納したZIPファイルの拡張子をCBZに変えればそのままevinceで閲覧することができます。PDFにするより楽なのでこの方法を使います。


…完成したスクリプトはこちらです。
gist: 631946 - 情報処理技術者試験の過去問PDFをCBZに変換するスクリプト- GitHub


説明が長くなりそうな気がしたので省略。このスクリプトを実行するためには popplar-utils パッケージ内の pdfimages と imagemagick パッケージ内の convert が必要なのでご注意下さい。

で、スクリプトを実行して変換が終わるまで数時間(!)待って完成したCBZファイルをevinceで開くとこのようになります。(プレゼンテーション表示時)



*1:各ページに4,300x6,100pxぐらいの大きさの画像がベタッと貼り付けられているのだから当然重い