ビットマップの操作の基礎

ビットマップの操作の概要

デジタルイメージを操作する際、主なグラフィックタイプ、つまりビットマップとベクターを取り扱います。ビットマップグラフィックは、ラスターグラフィックとも呼ばれ、矩形のグリッドに配列された小さな正方形、つまりピクセルによって構成されます。ベクターグラフィックは、直線、曲線、ポリゴンなど、数学的に生成された幾何学図形によって構成されます。

ビットマップイメージはイメージの幅と高さによって定義され、ピクセル数と 1 ピクセルあたりのビット数、つまり 1 ピクセルあたりの色数によって測定されます。RGB カラーモデルを使用するビットマップイメージの場合、ピクセルは赤、緑、青の 3 バイトで構成されます。各バイトは、0 から 255 までの値になります。ピクセルの中でバイトを組み合わせることにより、画家が絵の具を混ぜ合わせるのと同じような形で色が生成されます。たとえば、ピクセルのバイト値が赤 255、緑 102、青 0 であれば、鮮やかなオレンジ色が生成されます。

ビットマップイメージの品質は、イメージの解像度と、カラー深度のビット値を組み合わせることによって決定されます。解像度とは、1 つのイメージに含まれるピクセル数を指します。ピクセル数が大きいほど解像度が高くなり、イメージが精細に表示されます。カラー深度とは、1 つのピクセルが格納できる情報量を指します。たとえば、カラー深度値がピクセルあたり 16 ビットのイメージは、カラー深度が 48 ビットのイメージと同じ数の色を表現することはできません。その結果、48 ビットのイメージの方が 16 ビットのイメージよりもスムーズな階調を示すことができます。

ビットマップグラフィックは解像度に依存するので、効果的に拡大 / 縮小することができません。これは、ビットマップを拡大すると特によく分かります。ビットマップイメージを拡大すると細部が失われ、品質が劣化します。

ビットマップファイル形式

ビットマップイメージは、いくつかの一般的なファイル形式に分けられます。これらの形式は、それぞれに異なる圧縮アルゴリズムによってファイルサイズを縮小すると共に、イメージの最終用途に応じて画質を最適化します。Adobe Flash Player が対応しているビットマップイメージ形式は GIF、JPG、および PNG です。

GIF

Graphics Interchange Format (GIF) は、256 色、つまり 8 ビットカラーのイメージを伝送するために、1987 年に CompuServe 社によって開発されました。この形式はファイルサイズが小さいので、Web ベースのイメージには最適です。GIF のカラーパレットには限界があるので、GIF イメージは通常は写真には向いていません。写真は、細かな階調やカラーグラデーションを必要とするからです。GIF イメージは単独ビットの透明度にも対応しているので、カラーを透明としてマッピングすることもできます。これにより、透明度がマッピングされたイメージを透過して Web ページの背景を表示することができます。

JPEG

Joint Photographic Experts Group (JPEG) によって開発された JPEG (または JPG) イメージ形式は非可逆圧縮アルゴリズムを使用し、小さいファイルサイズで 24 ビットカラー深度を実現することができます。非可逆圧縮とは、イメージが保存されるたびに品質とデータが失われますが、ファイルサイズを小さく抑えられることです。JPEG 形式では何百万もの色を表示できるので、写真に最適です。イメージに適用される圧縮の度合いを制御できるので、イメージの品質とファイルサイズを操作することができます。

PNG

Portable Network Graphics (PNG) 形式は、特許を取得した GIF ファイル形式のオープンソース代替形式として開発されました。PNG は最大で 64 ビットのカラー深度に対応しているので、最大で 1,600 万色を表示することができます。PNG は比較的新しい形式なので、古いブラウザの中には PNG ファイルをサポートしていないものもあります。JPG とは違い、PGN は可逆圧縮を使用します。つまり、イメージが保存されても、イメージデータは失われません。PNG ファイルは、最大で 256 レベルの透明度に対応する、アルファ透明度もサポートしています。

透明なビットマップと不透明なビットマップ

GIF または PNG 形式を使用するビットマップイメージでは、各ピクセルに追加バイトとしてアルファチャンネルが付与されます。この追加バイトは、ピクセルの透明度の値を表します。

GIF イメージは単独ビットの透明度に対応しているので、256 色のカラーパレットの中から 1 色を指定し、その色を透明にすることができます。一方 PNG イメージでは、最大で 256 レベルの透明度に対応しています。この機能は、イメージやテキストを背景と混ぜ合わせる場合に特に有効です。

ActionScript 3.0 は、追加された透明度ピクセルバイトを BitmapData クラス内に複製します。PNG 透明度モデルと同様に、BitmapDataChannel.ALPHA 定数は最大で 256 レベルの透明度を実現することができます。

ビットマップの操作に関する一般的なタスク

次のリストは、ActionScript でビットマップイメージを操作する際に実行するいくつかのタスクを示します。

重要な概念と用語

次に、この章に記載される重要な用語を示します。

本章の例について

本章をお読みの際は、コード例を試すことができます。この章では視覚的なコンテンツの作成と操作について扱っているため、コードのテストには、コードを実行し、作成された SWF の結果を表示することが含まれます。

この章のコード例をテストするには:

  1. 空の Flash ドキュメントを作成します。
  2. タイムラインでキーフレームを選択します。
  3. [アクション] パネルを開き、[スクリプト] ペインにコードをコピーします。
  4. [コントロール]-[ムービープレビュー] を使用して、プログラムを実行します。

    作成された SWF ファイルで、コードの結果が表示されます。

ほぼすべてのコード例にビットマップイメージを作成するコードが含まれています。そのため、それらのコードはビットマップコンテンツを提供しなくても直接テストできます。独自のイメージに対してコードをテストする場合は、そのイメージを Adobe Flash CS3 Professional にインポートするか、その外部イメージをテスト SWF にロードして、そのビットマップデータをコード例で使うことができます。外部イメージをロードする手順については、表示コンテンツの動的ロードを参照してください。


 

このページに新しいコメントが追加された場合に、電子メールでの通知を希望する。 | コメントレポート

現在のページ: http://livedocs.adobe.com/flash/9.0_jp/main/00000242.html