Bagikan melalui


Fungsi CreateDIBitmap (wingdi.h)

Fungsi CreateDIBitmap membuat bitmap (DDB) yang kompatibel dari DIB dan, secara opsional, mengatur bitmap.

Sintaks

HBITMAP CreateDIBitmap(
  [in] HDC                    hdc,
  [in] const BITMAPINFOHEADER *pbmih,
  [in] DWORD                  flInit,
  [in] const VOID             *pjBits,
  [in] const BITMAPINFO       *pbmi,
  [in] UINT                   iUsage
);

Parameter

[in] hdc

Handel ke konteks perangkat.

[in] pbmih

Penunjuk ke struktur header informasi bitmap, BITMAPV5HEADER.

Jika fdwInit CBM_INIT, fungsi menggunakan struktur header informasi bitmap untuk mendapatkan lebar dan tinggi bitmap yang diinginkan serta informasi lainnya. Perhatikan bahwa nilai positif untuk tinggi menunjukkan DIB bawah ke atas sementara nilai negatif untuk tinggi menunjukkan DIB atas ke bawah. Memanggil CreateDIBitmap dengan fdwInit sebagai CBM_INIT setara dengan memanggil fungsi CreateCompatibleBitmap untuk membuat DDB dalam format perangkat dan kemudian memanggil fungsi SetDIBits untuk menerjemahkan bit DIB ke DDB.

[in] flInit

Menentukan bagaimana sistem menginisialisasi bit bitmap. Nilai berikut ditentukan.

Nilai Makna
CBM_INIT
Jika bendera ini diatur, sistem menggunakan data yang diacu oleh parameter lpbInit dan lpbmi untuk menginisialisasi bit bitmap.

Jika bendera ini jelas, data yang ditujukan oleh parameter tersebut tidak digunakan.

 

Jika fdwInit nol, sistem tidak menginisialisasi bitmap bit.

[in] pjBits

Penunjuk ke array byte yang berisi data bitmap awal. Format data tergantung pada anggota biBitCount dari struktur BITMAPINFO tempat parameter lpbmi menunjuk.

[in] pbmi

Penunjuk ke struktur BITMAPINFO yang menjelaskan dimensi dan format warna array yang ditujukkan oleh parameter lpbInit .

[in] iUsage

Menentukan apakah anggota bmiColors dari struktur BITMAPINFO diinisialisasi dan, jika demikian, apakah bmiColors berisi nilai merah, hijau, biru (RGB) eksplisit atau indeks palet. Parameter fuUsage harus menjadi salah satu nilai berikut.

Nilai Makna
DIB_PAL_COLORS
Tabel warna disediakan dan terdiri dari array indeks 16-bit ke dalam palet logis konteks perangkat tempat bitmap dipilih.
DIB_RGB_COLORS
Tabel warna disediakan dan berisi nilai RGB harfiah.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan adalah handel ke bitmap yang kompatibel.

Jika fungsi gagal, nilai yang dikembalikan adalah NULL.

Keterangan

DDB yang dibuat akan menjadi kedalaman bit apa pun referensi Anda DC. Untuk membuat bitmap dengan kedalaman bit yang berbeda, gunakan CreateDIBSection.

Agar perangkat mencapai kecepatan gambar bitmap yang optimal, tentukan fdwInit sebagai CBM_INIT. Kemudian, gunakan DIB kedalaman warna yang sama dengan mode video. Saat video berjalan 4- atau 8-bpp, gunakan DIB_PAL_COLORS.

Bendera CBM_CREATDIB untuk parameter fdwInit tidak lagi didukung.

Saat Anda tidak lagi memerlukan bitmap, panggil fungsi DeleteObject untuk menghapusnya.

ICM: Tidak ada manajemen warna yang dilakukan. Isi bitmap yang dihasilkan tidak cocok dengan warna setelah bitmap dibuat.

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header wingdi.h (sertakan Windows.h)
Pustaka Gdi32.lib
DLL Gdi32.dll

Lihat juga

BITMAPINFO

BITMAPINFOHEADER

Fungsi Bitmap

Gambaran Umum Bitmap

CreateCompatibleBitmap

CreateDIBSection

DeleteObject

GetDeviceCaps

GetSystemPaletteEntries

PilihObject

SetDIBits