#include "l_bitmap.h"
L_LTFIL_API L_INT L_LoadBitmapMemory(pBuffer、pBitmap、uStructSize、nBitsPerPixel、nOrder、nBufferSize、pLoadOptions、pFileInfo)
L_UCHAR * pBuffer; |
ロードした*/であるためにメモリ内のファイルに/*ポインター |
pBITMAPHANDLE pBitmap; |
/* ターゲットビットマップハンドルへのポインター*/ |
L_UINT uStructSize; |
/* pBitmapがポイントする構造のサイズ(バイト単位) */ |
L_INT nBitsPerPixel; |
/* 結果として生じるビットマップビット数*/ |
L_INT nOrder; |
/* 16-のためにカラーオーダー、24-、32-、48-、そして、64ビットビットマップ*/、 |
L_SSIZE_T nBufferSize; |
メモリ(バイトの)*/のファイルの/*サイズ |
pLOADFILEOPTION pLoadOptions; |
/* オプションの拡張ロードオプションへのポインター*/ |
pFILEINFO pFileInfo; |
/* 構造体へのポインタ*/ |
an image ファイルをmemory into a ビットマップからロードします。ファイルは、圧縮、または、未圧縮にせよ、メモリ内の任意のサポートされた画像ファイル形式とピクセル当たりビットであることができます。
パラメーター |
説明 |
|
pBuffer |
メモリ内のロードされるファイルへのポインター。 |
|
pBitmap |
ターゲットビットマップを参照文に引用しているビットマップハンドルへのポインター。 |
|
uStructSize |
バージョニングのためのバイト(pBitmapによってポイントされる構造体の)のサイズ。sizeof(BITMAPHANDLE)を使います。 |
|
nBitsPerPixel |
結果として生じるビットマップビット数。以下は、有効値です: |
|
|
値 |
意味 |
|
0 |
オリジナルファイルのビット数(変換しません)を保持します。12ビットおよび16ビットのグレースケール画像のロードに関する特別な注意. |
|
8への1 |
結果として生じるビットマップの指定されたピクセル当たりビット |
|
12 |
結果として生じるビットマップの12ビット/ピクセル。 |
|
16 |
結果として生じるビットマップの16ビット/ピクセル |
|
24 |
結果として生じるビットマップの24ビット/ピクセル |
|
32 |
結果として生じるビットマップの32ビット/ピクセル |
|
48 |
結果として生じるビットマップの48ビット/ピクセル |
|
64 |
結果として生じるビットマップの64ビット/ピクセル |
nOrder |
16-、24-、32-、48-、64ビットビットマップのためのカラーオーダー。結果として生じるビットマップが16ビット/ピクセル未満であるならば、パレット画像が命令を持っていないため、これはエフェクトを持っていません。以下は、有効値です: |
|
|
値 |
意味 |
|
ORDER_RGB |
[0] メモリ内に赤・緑・青のカラーオーダー。 |
|
ORDER_BGR |
[1] メモリ内にBlue、緑と赤のカラーオーダー。 |
|
ORDER_GRAY |
[2] 12または16ビットグレースケールimage。12と16ビットグレースケールイメージは、DocumentとMedical画像化ツールキットでサポートされるだけです。 |
|
ORDER_RGBORGRAY |
[3] 赤い、緑、青として、または12ビットまたは16ビットのグレースケールimageとして画像をロードします。12ビットと16ビットのグレースケールイメージは、ドキュメントとMedical Imagingツールキットでサポートされます。 |
|
ORDER_BGRORGRAY |
[4] 青、緑、赤として、または12ビットまたは16ビットのグレースケールimageとして画像をロードします。12と16ビットグレースケールイメージは、DocumentとMedical画像化ツールキットでサポートされます。 |
|
ORDER_ROMM |
[5] ROMMオーダー。ROMMは、24ビットと48ビットのイメージのみをサポートします。 |
|
ORDER_BGRORGRAYORROMM |
[6] 赤い、緑、青として、または12ビットまたは16ビットのグレースケールimageとして、またはロンムとして画像をロードします。12と16ビットグレースケールイメージは、DocumentとMedical画像化ツールキットでサポートされます。ROMMは、24ビットと48ビットのカラーイメージのみをサポートします。 |
nBufferSize |
メモリ(バイトの)のファイルのサイズ。 |
|
pLoadOptions |
オプションの拡張ロードオプションへのポインター。デフォルトのロードオプションを使うために、NULLを渡します。 |
|
pFileInfo |
FILEINFO構造体へのポインター。この構造体はimageをロードする際に使われるファイル情報を格納するかもしれません、または、それはロードされているファイルに関する情報で更新されるかもしれません。 |
|
|
何もファイルについてわかっていないならば、このパラメーターのためにNULLを渡します、さもなければ、型FILEINFOの変数を宣言して、FILEINFO.Flagsを0に設定します、そして、このパラメーターでFILEINFO構造体のアドレスを渡します。この場合、FILEINFO構造体のアドレスが渡されるならば、FILEINFO構造体はL_FileInfoの結果で更新されます。 |
|
|
ファイルタイプが知られさえすれば、pFileInfo.Formatをファイルタイプに設定して、pFileInfo.FlagsをFILEINFO_FORMATVALIDに設定します。L_FileInfoが以前に呼び出されたならば、これはされることもできます、しかし、ロードされるimageのサイズに影響を及ぼす値は変更されました(たとえば、L_SetPCDResolutionまたはL_SetWMFResolutionを呼び出すことによって)。この場合、構造体がpFileInfoによってポイントしたFILEINFOは、L_FileInfoの結果で更新されます。 |
|
|
若干のファイルフォーマットは、はっきりしたファイル署名を格納しません。これは、特にドキュメントファイルフォーマット(TXT、PSTその他)のためのtrueです。LEADTOOLSは、まだファイル名拡張子を使用してファイルフォーマットを検出することができます(例「.PST」)。しかし、ロードがメモリからファイルするとき、ファイル名拡張子は利用できません。ファイル名拡張子でこの関数を提供するために、メモリからロードするとき、FILEINFO_NAMEVALIDに拡張とpFileInfo.FlagsでpFileInfo.Nameを画像ファイルの名前に設定します。 |
|
|
L_FileInfoがこの関数を呼び出す前に呼び出されたならば、そして、変化はL_FileInfoによって塗りつぶされる構造体のコンテンツになされませんでした、そして、塗りつぶされたFILEINFO構造体のアドレスはこのパラメーターのために渡されることができます。この場合、FILEINFO.Flagsメンバは、FILEINFO_INFOVALIDに設定されなければなりません。L_FileInfo関数は、FILEINFO.FlagsをFILEINFO_INFOVALIDに設定します。この場合、この関数がファイルがファイルのためにフィルタリングすると尋ねる必要がないため、ロードはより高速でしょう型。 |
|
|
注意:ローカル変数は、初期化されません(スタックに置かれるため)。それで、ローカル変数としてFILEINFO構造体を持っているならば、そのFlagsパラメーターの値は未定義です。そして、おそらくFILEINFO_INFOVALIDまたはFILEINFO_FORMATVALIDを設定しておきます。そういうわけで、関数にFILEINFO構造体のアドレスを渡す前にFILEINFO.Flagsを初期化することは、重要です。 |
戻り値
SUCCESS |
関数は成功しました。 |
<1 |
エラーが発生しました。リターンコードを参照してください |
コメント
12と16ビットグレースケールイメージのサポートは、DocumentとMedical画像化ツールキットで利用できるだけです。
サポートされている形式については、「アプリケーションとともに配布するファイル」を参照してください。
この関数を呼び出す前に、複数ページのファイルのページ番号などの、ファイル情報を取得または設定する必要があるかもしれません。ファイル情報を取得して、設定することを参照してください
関数はビットマップハンドルを初期化して、imageを保持するのに必要な保管を割り当てます。ファイルのピクセル当たりビットが8ビットより大きいならば、画像データはものがnOrderで関数に渡したのと同じカラーオーダーでロードされます。
関数がimageを保持するために保管を割り当てるため、L_FreeBitmapを呼び出すことによってこの保管を開放することはです。
この関数が、L_RedirectIOと結合して使われることができません。
注意: |
より多くのオプションは、LOADFILEOPTION構造体で利用できます。 |
注意: |
向け直されたIOは、若干のファイルフォーマットのためにサポートされません。詳細については、「リダイレクトIOがサポートされないファイル形式」を参照してください。 |
注意:この関数に初期化されていないFILEINFO構造体を決して渡すべきでありません。
必須のDLLとライブラリ
LTFIL ツールキットバージョンに基づいた正確なDLLとライブラリのリストについては、「アプリケーションとともに配布するファイル」を参照してください。 |
Win32、x64、Linux。
参照
LOADFILEOPTIONまたはSAVEFILEOPTION構造体を利用する関数のリストについては、LOADFILEOPTIONまたはSAVEFILEOPTION構造体を利用している関数を参照します。
サンプル
短いサンプルのために、L_SaveBitmapMemoryを参照します。完了したサンプルコードについては、MEMORYサンプルを参照します。