2値画像フォーマット
Namespace: FVILAssembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)
Syntax
C# |
---|
public enum BinaryFormat |
Visual Basic |
---|
Public Enumeration BinaryFormat |
Members
Member name | Value | Description | |
---|---|---|---|
DwordOrder | 0 | ダブルワードオーダーで配置された2値データを意味します。ポインタ走査する場合は 4byte 単位に行う必要があります。 | |
ByteOrder | 1 | バイトオーダーで配置された2値データを意味します。ポインタ走査する場合は 1byte 単位に行う必要があります。 |
Remarks
2値画像のビットデータが 4byte の領域にどのように配置されているかを表す定数です。
ByteOrder は、バイトオーダーで配置されている事を意味します。 画素は、4byte の領域の上位ビット(左)から 24~31、16~23、8~15、0~7 のように配置されています。 この画像をポインタ走査する場合は 1byte 単位に行う必要があります。
DwordOrder は、ダブルワードオーダーで配置されている事を意味します。 画素は、4byte の領域の上位ビット(左)から 0~31 のように配置されています。 この画像をポインタ走査する場合は 4byte 単位に行う必要があります。
本クラスライブラリの画像処理では、 DwordOrder で配置された2値画像を使用します。 DIB 仕様の2値画像は ByteOrder で配置されています。
下図は、2値画像データの並びとメモリのアドレスの対応を示します。(※注:32bit CPU リトルエンディアンの場合)
1byte 単位にポインタ走査すると、アドレス増加方向(1)、(2) の順番に進みます。 ByteOrder の場合は、System.Byte 等で 1byte 単位に走査すると、 画素(0~7)を上位ビット(左)から順番にアクセスできます。
4byte 単位にポインタ走査すると、アドレス増加方向(2) の順番に進みます。 DwordOrder の場合は、System.UInt32 等で 4byte 単位に走査すると、 画素(0~31)を上位ビット(左)から順番にアクセスできます。