39.11. "imgfile" --- SGI imglib ファイルのサポート
**************************************************

バージョン 2.6 で非推奨: "imgfile" モジュールは Python 3 で削除されま
した。

"imgfile" モジュールは、Python プログラムが SGI imglib 画像ファイル
(".rgb" ファイルとしても知られています) にアクセスできるようにします。
このモジュールは完全なものにはほど遠いですが、その機能はある状況で十分
役に立つものなので、ライブラリで提供されています。現在、カラーマップ形
式のファイルはサポートされていません。

このモジュールでは以下の変数と関数を定義しています:

exception imgfile.error

   この例外は、サポートされていないファイル形式の場合のような全てのエ
   ラーで送出されます。

imgfile.getsizes(file)

   この関数はタプル "(x, y, z)" を返します。 *x* および *y* は画像のサ
   イズをピクセルで表したもので、 *z* はピクセルあたりのバイト長です。
   3 バイトの RGB ピクセルと 1 バイトのグレイスケールピクセルのみが現
   在サポートされています。

imgfile.read(file)

   この関数は指定されたファイル上の画像を読み出して復号化し、 Python
   文字列として返します。この文字列は 1 バイトのグレイスケールピクセル
   か、4 バイトの RGBA ピクセルによるものです。左下のピクセルが文字列
   中の最初のピクセルになります。これは "gl.lrectwrite()" に渡すのに適
   した形式です。

imgfile.readscaled(file, x, y, filter[, blur])

   この関数は read と同じですが、 *x* および *y* のサイズにスケールさ
   れた画像を返します。 *filter* および *blur* パラメタが省略された場
   合、単にピクセルデータを捨てたり複製したりすることによってスケール
   操作が行われるので、処理結果は、特に計算機上で合成した画像の場合に
   はおよそ完璧とはいえないものになります。

   そうする代わりに、スケール操作後に画像を平滑化するために用いるフィ
   ルタを指定することができます。サポートされているフィルタの形式は
   "'impulse'" 、 "'box'" 、 "'triangle'" 、 "'quadratic'" 、および
   "'gaussian'" です。フィルタを指定する場合、 *blur* はオプションのパ
   ラメタで、フィルタの不明瞭化度を指定します。デフォルトの値は "1.0"
   です。

   "readscaled()" は正しいアスペクト比をまったく維持しようとしないので
   、それはユーザの責任になります。

imgfile.ttob(flag)

   この関数は画像のスキャンラインの読み書きを下から上に向かって行う (
   フラグがゼロの場合で、SGI GL 互換です) か、上から下に向かって行う (
   フラグが 1 の場合で、X 互換です) かを決定する大域的なフラグを設定し
   ます。デフォルトの値はゼロです。

imgfile.write(file, data, x, y, z)

   この関数は *data* 中の RGB またはグレイスケールのデータを画像ファイ
   ル *file* に書き込みます。 *x* および *y* には画像のサイズを与え、
   *z* は 1 バイトグレイスケール画像の場合には 1 で、RGB 画像の場合に
   は 3 (4 バイトの値として記憶され、下位 3 バイトが使われます) です。
   これらは "gl.lrectread()" が返すデータの形式です。
