データ複製
Namespace: FVIL.GDIAssembly: FVILbasic (in FVILbasic.dll) Version: 3.1.0.0 (3.1.0.17)
Syntax
C# |
---|
public virtual CFviGdiImage CopyFrom( CFviImage src ) |
Visual Basic |
---|
Public Overridable Function CopyFrom ( src As CFviImage ) As CFviGdiImage |
Parameters
- src
- Type: FVIL.Data..::..CFviImage
複製元
Return Value
Type: CFviGdiImage複製後の自身のインスタンスを返します。
Remarks
CFviImage クラスが持つ画像データで、このクラスの画像データを更新します。 このクラスの画像領域は再確保され src の画像領域に合わされます。 複製可能か否かは、CheckCopyable(CFviImage) で 判定できます。
複製処理の挙動を下表に示します。
入力の画像種別 (ImageType) | 入力のチャネル数 | 複製後のbpp | 複製処理の概要 |
---|---|---|---|
BIN | 1 | 1bpp | バイトオーダーに入れ替えます。(関連:BinaryFormat) |
UC8 | 1 | 8bpp | そのまま複製します。 |
US16 | 1 | 8bpp | 入力側の Depth に従って 8bpp に減色します。 |
UI32 | 1 | 8bpp | 入力側の Depth に従って 8bpp に減色します。 |
UC8 | 3 | 24bpp | 24bpp にパッキングします。 |
US16 | 3 | 24bpp | 入力側の Depth に従って 8bpp に減色後、24bpp にパッキングします。 |
UI32 | 3 | 24bpp | 入力側の Depth に従って 8bpp に減色後、24bpp にパッキングします。 |
RGB24 | 1 | 24bpp | R,G,B のプレーンをそのまま複製します。 |
RGB32 | 1 | 32bpp | R,G,B のプレーンをそのまま複製します。(アルファ値は上書きしません) |
複製が不可能な場合や画像領域の確保に失敗した場合は例外を発行します。 例外の原因と発生位置を特定するには、発行された例外クラスの ErrorCode メンバと Function メンバを参照してください。
エラーコード:
値 | ErrorCode メンバ | 内容 |
---|---|---|
11 | FVIL.ErrorCode.INVALID_PARAMETER | 複製不可能です。 |
1 | FVIL.ErrorCode.FAILED_TO_ALLOCATE | メモリの確保に失敗しました。 |
Exceptions
Exception | Condition |
---|---|
FVIL..::..CFviException | この例外の原因については、上記のエラーコード表をご参照ください。 |