Bagikan melalui


Fungsi EngCreateBitmap (winddi.h)

Fungsi EngCreateBitmap meminta GDI membuat dan mengelola bitmap.

Sintaks

ENGAPI HBITMAP EngCreateBitmap(
       SIZEL sizl,
       LONG  lWidth,
  [in] ULONG iFormat,
  [in] FLONG fl,
  [in] PVOID pvBits
);

Parameter

sizl

Menentukan struktur SIZEL yang anggotanya berisi lebar dan tinggi, dalam piksel, bitmap yang akan dibuat. Struktur SIZEL identik dengan struktur SIZE .

Jika pvBits bukan NULL, nilai ini harus mewakili semua piksel yang terlihat pada perangkat, memungkinkan perangkat untuk menjaga memori di luar layar.

lWidth

Menentukan lebar alokasi bitmap, yang merupakan jumlah byte yang harus ditambahkan ke penunjuk untuk memindahkan satu baris pemindaian ke bawah.

[in] iFormat

Menentukan format bitmap dalam hal jumlah bit informasi warna per piksel yang diperlukan. Parameter ini bisa menjadi salah satu nilai berikut:

Nilai Makna
BMF_1BPP Monokrom
BMF_4BPP 4 bit per piksel
BMF_8BPP 8 bit per piksel
BMF_16BPP 16 bit per piksel
BMF_24BPP 24 bit per piksel
BMF_32BPP 32 bit per piksel
BMF_4RLE 4 bit per piksel; panjang eksekusi dikodekan
BMF_8RLE 8 bit per piksel; panjang eksekusi dikodekan

[in] fl

Adalah bitmask yang menentukan properti tentang bitmap yang akan dibuat. Parameter ini bisa nol, atau kombinasi apa pun dari nilai berikut:

Nilai Makna
BMF_NOZEROINIT GDI tidak akan menginisialisasi bitmap nol saat mengalokasikannya. Bendera ini hanya diperiksa ketika pvBits adalah NULL.
BMF_TOPDOWN Baris pemindaian pertama mewakili bagian atas bitmap. Perhatikan bahwa bitmap format standar memiliki baris pemindaian pertama di bagian bawah secara default.
BMF_USERMEM GDI akan mengalokasikan memori untuk bitmap dari memori pengguna. Secara default, memori dialokasikan dari ruang alamat kernel. Bendera ini harus ditentukan hanya ketika bitmap yang dibuat tidak akan digunakan oleh proses lain. Memori pengguna tidak dapat diteruskan ke EngWritePrinter oleh pengandar pencetak.

[in] pvBits

Arahkan ke baris pemindaian pertama bitmap yang akan dibuat. Jika parameter ini NULL, GDI mengalokasikan ruang penyimpanan untuk piksel bitmap. Jika pvBits bukan NULL, itu adalah penunjuk ke buffer untuk bitmap.

Mengembalikan nilai

Jika fungsi berhasil diselesaikan, nilai yang dikembalikan adalah handel yang mengidentifikasi bitmap yang dibuat. Jika tidak, nilai yang dikembalikan adalah 0. EngCreateBitmap tidak mencatat kode kesalahan.

Keterangan

Penyimpanan untuk bitmap secara opsional dapat disediakan oleh driver.

Driver harus mengaitkan bitmap yang dibuat sebagai permukaan dengan memanggil EngAssociateSurface sebelum kembali dari DrvEnableSurface.

Bitmap harus dihapus dengan menggunakan EngDeleteSurface ketika tidak lagi diperlukan.

Driver tampilan buffer bingkai harus menggunakan parameter pvBits , memungkinkan GDI untuk melakukan sebagian besar gambar langsung ke layar.

Persyaratan

   
Klien minimum yang didukung Tersedia di Windows 2000 dan versi yang lebih baru dari sistem operasi Windows.
Target Platform Universal
Header winddi.h (termasuk Winddi.h)
Pustaka Win32k.lib
DLL Win32k.sys

Lihat juga

DrvCreateDeviceBitmap

EngAllocUserMem