ソフトを開発しようと思った動機、背景
「PngOptimizer」の開発をはじめたのは2002年。自分で使うためでした。当時はいまほどPNG形式は一般的ではありませんでしたが、大きな可能性を感じていたので、Webサイト用の画像はPNG形式のファイルを使うことにしていました。しかし、残念なことに当時、最もポピュラーなグラフィックアプリケーションのひとつのPNGの対応状況はひどいものでした。このアプリケーションが出力したPNGファイルは、Webブラウザで正しく表示されないという有様だったのです。なぜ、PNGファイルが正しく表示されないかの理由を知りたいと考え、この形式のことをあれこれ学びました。そして、私が使っていたアプリケーションでは、以前Webブラウザで表示された不要な色にガンマおよび色度情報を埋め込んでいたことがわかりました。
そこで、「TweakPNG」というすばらしいツールを使って、不要な情報を除去しようと試みました。しかしながら、これは、描画する→PNG形式で出力する→手作業で修正する→Webブラウザで確認する→描画する……の作業の繰り返しを意味していました。まったくに退屈で非生産的な作業です。これが「PngOptimizer」を開発しようと思った動機です。PNGファイルをドラッグ&ドロップするだけで、自動的に最適化してくれます。
当初「PngOptimizer」は、PNGファイルの不要な情報を除去するだけでしたが、その後、さらなる最適化を行うことで、よりファイルを軽量化できるのではないかと考えました。私はPNG形式が普及すればよいと思っていましたし、PNG形式に関して私と同じ問題に直面している人もいるだろうと考え、自分のサイトで「PngOptimizer」を公開することにしたのです。
開発中に苦労した点
特徴的な機能を追加しようとするたびに、困難にぶち当たっています:)。例えば、新しい最適化方法、GIF/BMPの軽量化、64bit対応、アニメーションPNG(APNG)への対応、マルチコアCPUへの対応、そして最近ではLinux版の開発です。
ユーザにお勧めする使い方
基本的にはドラッグ&ドロップするだけでよいので、はじめてでも直感的に使えますが、いくつかお勧めの使い方を書いておきます。
Windowsの「送る」メニューに「PngOptimizer」へのリンクを追加しておくと便利です。最適化したいファイルをエクスプローラで選択し、「PngOptimizer」に「送る」を実行するだけで作業が完了します。
「PngOptimizer」のオプションは、初期状態で最適なものに設定されていますが、設定を変えてみてもおもしろいです。もし、あなたがそのPNGファイルの作者であるなら、すべてのPNGファイルに作者情報を埋め込むようにすることも可能です。
「PngOptimizer」はインストール不要で、実行ファイルとPngOptimizer.iniファイルさえあれば、使うことができます。PngOptimizer.iniファイルに設定が書き込まれますので、USBメモリなどに入れて持ち運んで使うことができます。
今後のバージョンアップ予定
上述したように現在、「PngOptimizer」をLinux(Ubuntu)に移植中です。これは学ぶべきことが多く、非常に挑戦的なことです。移植が終了したら、新たな最適化法に取り組みたいと思っています。
(Hadrien Nilsson)