« 2008年07月 | メイン | 2008年10月 »

GhostscriptでPDFを画像に変換(PDF2PNG)

正直、目から鱗。こんな便利なものがあったとは…

きっかけは“RedBulletin”。2005年以降のバックナンバー、ファイル数にして200以上。一応、年別、レース別に整理して保存しているんですが、「○○が表紙の号はどれだっけ?」といちいちAdobeリーダーを立ち上げて探すのも面倒になってきたので、表紙のサムネイルでも作って整理し直したいなと思ったわけです。便利なソフトでもないかなと、「PDF 画像に変換」などのキーワードで検索していたところ、Ghostscriptを使うのが一番だという結論に行き当たりました。

スクリプトのインストールは、圧縮ファイルを展開するだけ。インターフェイスは専用のソフトが別にあるそうですが、なくてもそのままコマンドラインから起動できます。どうせ英語だし、大量のファイルを処理するにはバッチファイルを使った方が速い、ということで、余計なものは入れずに素で使ってみることにしました。

高度な処理にあたってはフォントの問題が出てくる可能性があるそうですが、PDFからサムネイル画像を作る程度の処理であれば大きな問題はなさげです。ネックなのは、大量のファイルを一気に処理させようとすると結構なお時間を食ってしまう点でしょうか。レッドブルテンの例でいえば、PDFファイルから1ページ抽出するのに約30秒というところでしょうか。どうやらメモリを大食いしてるようなので、パソコンのスペックでも差が出ると思います。(うちで最も高性能なMacで実験してみたかったんですが、バッチファイルが使えないのでまだ試していません。)

[PDF形式→画像形式]の変換だけでなく、逆に[画像形式→PDF形式]や、単に[画像形式→画像形式]といった変換も自由自在に行えます。こんなに便利なものがあるなんて、もっと早く知っておくべきでした。

--- ( 以下、超個人的な覚え書き ) ---

まずは、とっかかりということで、

ここで紹介されているバッチファイルをそのままいただきました。pdf2jpgはバッチリ動きましたが、応用編として紹介されているpdf2pngはエラーが出てしまいました。

マニュアルで確認したところ、

Ghostscript provides a variety of devices for PNG output varying by bit depth. For normal use we recommend png16m for 24-bit RGB color, or pnggray for grayscale. The png256, png16 and pngmono devices respectively provide 8-bit color, 4-bit color and black-and-white for special needs.

The pngalpha device is 32-bit RGBA color with transparency indicating pixel coverage. The background is transparent unless it has been explicitly filled. PDF 1.4 transparent files do not give a transparent background with this device. Text and graphics anti-aliasing are enabled by default.

The pngalpha device has one option. The other png devices have no special options.

とありましたので、バッチファイルの

-sDEVICE=png

-sDEVICE=pngalpha

に書き換えてリトライ。これで、pdf2pngにも成功しました。

ただ、ここまでの設定では、PDFに格納された全てのページを画像変換することになり、処理に時間が掛かってしまいます。今回は表紙だけを変換したいので、1ページ目のみを変換できる方法を調べました。マニュアルと格闘したのですが、英語、英語、英語の連続であえなくリタイヤ。「ghostscript pdf ページ指定」などのキーワードで検索するも、なかなか参考になるサイトが見つかりません。

そこで、バッチファイルを実行したときに "FirstPage 1 LastPage 10" のような文字列が吐き出されていたことを思い出し、「ghostscript firstpage lastpage」で検索。

見よう見まねに、出力ファイル名と入力ファイル名の間に

-dFirstPage=1 -dLastPage=1

と書き加え、実行。これで無事にPDFファイルから表紙のみを抽出してPNG画像に出力することができました。

pdf2png.bat - とりあえずサンプル

@C:\gs\gs8.63\bin\gswin32c.exe -dSAFER -dBATCH -dNOPAUSE -sDEVICE=pngalpha -r300 -sOutputFile=%1%%03dTo.png -dFirstPage=1 -dLastPage=1 %1

解像度は300dpiにしています。アルファチャンネルを持つPNG画像を高解像度で出力するわけですから、当然バカでかい画像が出力されます。小さいのが好みの人は数字を削ってお好みに合わせて下さい。上のマニュアルにあるように、アルファチャンネルを使わないよう指定することも可能です。また、解像度ではなく、画像のサイズを直接指定したい人は、そういう方法もありますんで、マニュアル読むなり、ググるなりして探して下さい。

しかし、いきなりサムネイルサイズで出力させようとすると、画質の問題が生じます。マニュアルによると、Ghostscriptの標準設定(解像度を指定しない場合に自動補完される数値)は75dpiです。モノクロやグレースケールの変換であればこの数値でほぼ問題なしですが、変換元になるファイルの画素数や色数が多いものになればなるほど、どうしても低画質感の否めない粗い画像が出力されてしまうことがしばしば起こります。

好みの画質になるまで一回一回、スクリプトを走らせて画質を確認するというのも結構面倒な作業なので、私は、まずは高画質で出力して、減色とリサイズは専用のソフトに任せるつもりです。二段階の作業になりますが、結果的にはこちらの方が手早く、かつ満足な仕上がりが得られるはずです。要は用途次第ということですね。

ミナルディは永遠に偉大なり!

もう10日も前のことになりますが、イタリアGPのセバスチャン・ベッテル(STR・フェラーリ)の優勝には、胸が熱くなりました。今シーズンのF1は、フェラーリは詰めが甘いし、ホンダはふがいないし、なんかもう惰性で観戦してるような感じだったんですけど、辛気臭い空気を全部ぶっ飛ばしてくれるような出来事でした。

なんつっても、元はミナルディですからね。前オーナーのポール・ストッダート氏が、新オーナーのディートリッヒ・マテシッツ氏にチーム株式を売却する際の条件は「イタリアを拠点とすること」と「スタッフの雇用を保障すること」の2つ。“Minardi Team”から“Scuderia Toro Rosso”へと看板が変わって3シーズン目になりますが、レッドブルはちゃんと約束を守ってくれて、ファクトリーの作業員、ロジスティックの担当者、そして現場のメカニックたち、大方7割くらいはミナルディから生え抜きの人たちが頑張っているそうです。

私も、ちょっと古い話になりますが(FSWには意地でも行きませんので)、2006年の日本GP、木曜のピットウォークで、トロロッソのピット前を横切ったのですが、ミナルディ時代と変わらぬ明るさ、いやお金があるだけにミナルディ時代よりさらに明るくなったような気さえするほどでした。決してトップチームではないけれど、彼らのレースへの情熱は、フェラーリやマクラーレンに勝るとも劣りません。レッドブルの会社柄、そして共同オーナーとなったゲルハルト・ベルガー氏の人柄、ほんと「いい人たちに買ってもらえたなー」と思います。

この偉大なるチームを創設したジャンカルロ・ミナルディ氏はもちろん、ジャンカルロとともにF1に闘志を燃やすも病に倒れこの世を去ったガブリエル・ルーミ氏、どんなに苦しい状況でも諦めずにアタックしつづけた歴代ドライバー、少ない予算を創意工夫でカバーしたエンジニア、どんなに忙しくてもランチタイムだけはちゃっかり確保するメカニック、パドックで美味しいパスタを振る舞ったコックさん、そして純粋にモーターレーシングを愛しているファン、みんなが素直に「おめでとう」と讃えてくれる───こんなチームは他にはちょっとありません。

小さな小さなチームなのに、とてつもなくたくさんの人に幸せを提供してくれる、それがミナルディのいいところ。その家族的集団の良き雰囲気を受け継ぎ、ジョークとウィットにも富んだ戦闘集団を作り上げた、それがトロロッソというチームのいいところだと思います。「魂」と「愛」と「良心」しかない弱小でも、悲観したり、投げ槍になったりすることは決してない、その前向きで気取らない格好良さがレースファンのハートを鷲づかみにしてくれます。

やっぱりミナルディ!

ってことで、ちょろちょろとネットサーフィンしてましたら、面白そうな本を見つけました。F1を題材にした書籍は山ほどあれど、ミナルディが主役の本は広い広い世界でこれ一冊のみ(ではないだろうか)

Forza Minardi!: The Inside Story of the Little Team Which Took on the Giants of F1

Forza Minardi!: The Inside Story of the Little Team Which Took on the Giants of F1

表紙はなんとミナルディ・ハートM197を駆る片山右京!

「どうせ作るんやったら、表紙は“ミスター・ミナルディ”ことピエルルイジ・マルティニちゃうんかい!」と全世界のミナルディマニアが一斉にツッコミを入れてそうな気するのですが、そこはご愛敬。右京選手も立派なミナルディドライバー。モナコの予選でトゥルーリに勝ったんやで! まぁ、ミナルディといえば、有望な若手ドライバーを多く輩出したことで知られるチームですが、右京選手の他にも、マルティニ、アルボレートなどのベテランドライバーがきっちり脇を固めて、渋みにも抜かりのないチームでもありました。

敢えて大衆の期待を裏切って右京選手を表紙にするのは、編集者のセンスの賜物か、あるいは編集者がマルティニを知らなかったのか、はてまた日本のお客さんが買い込むことを期待しただけなのか、そのへんは中身を読んでからのお楽しみです。

英語の苦手な人にはキツいかもしれませんが、「読書の秋」ですし、勉強がてら辞書片手に読んでみてはいかがでしょうか。ミナルディを知っている方はもちろん、ミナルディを知らない方も、壮絶なのに愉快、弱小なのに偉大、「F1界の最後の良心」として世界中のF1ファンから愛されてやまないミナルディチームの歴史と戦譜を再認識できるはずです。

>> 続きを読む

 Restore Buffaloes !!

Information

Calendar

2010年5月
Sun Mon Tue Wed Thu Fri Sat
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31          

Mobile

Etc.

あわせて読みたい
Listed on BlogShares
Subscribe to my feed, なにわっち's Weblog
Subscribe to my feed, なにわっち's Weblog
人気blogランキング
ブログランキング・にほんブログ村
にほんブログ村 野球ブログ
にほんブログ村 野球ブログ - 思い出の球団
にほんブログ村 競馬ブログ
にほんブログ村 競馬ブログ - 地方競馬・ばんえい
にほんブログ村 車ブログ - モータースポーツ
にほんブログ村 トラコミュ - 近鉄バファローズ
にほんブログ村 トラコミュ - 園田競馬・姫路競馬
人気ブログランキング・ブログの殿堂
blog seo tool : track word
RSS feed meter for  http://naniwacchi.just-size.jp/weblog/

My Profile

My Bookmark

パシフィックリーグ連盟歌(公式ソング) 『白いボールのファンタジー』
blogtimes.png
This Weblog is licensed under the Creative Commons License.
Creative Commons License
Hosted by JSN
Powered by Movable Type 4.27-ja
© Copyright 2003-2010. Naniwacchi, All Rights Reserved.