One Note Jam

S60用スクリーンキャプチャアプリケーションの開発 (2005-11-13)

久々に(プライベートで)Symbianプログラムを再開。作っているのはS60プラットフォーム向けのスクリーンキャプチャツールです。先日、702NKのスクリーンショットを取る必要が生じたのでその手のアプリケーションを物色してみたのですが、なぜか保存形式がJPEG形式だったり、非圧縮形式で保存できるものはシェアウェアだったりして、なんともままなりません。それがきっかけで、ちょっと自分で作ってみようかと思った次第です。

実は、最近私は業務でSymbianプログラムの開発をやっていて、表示系まわりについてはちょっとだけ知識があります。なので、スクリーンキャプチャを実現するために、Symbianのクラスライブラリのどのクラスを使えばいいのかについてもだいたい見当はついていました。というわけで、スクリーンの表示内容をCFbsBitmap形式にダンプするクラスをさくっと作成。そうなれば、CFbsBitmap::SaveL()メソッドを使って簡単にmbmファイルが出来上がり(mbm形式は、Symbian OS標準の画像形式です)。あとは、SDKのツール"bmconv"を使えばBMPファイルに変換できます。やっぱりスクリーンショットは非圧縮形式でないとねー。

せっかく作ったので、もうちょっとまともなものにして公開しようかと思います。まずは画像の保存形式を標準的なフォーマット(PNGとかBMPとか)に対応させたいところ。画像の各種フォーマットへのエンコードは、ICL(Image Conversion Library)を使えば簡単に実現できそうです。今後の業務でICLに係わる可能性もあるため、これを機に触れておこうかと考えています。

posted at 2005-11-13 | Permalink

© 2004-2008 ENDO