Fungsi DrawDibBegin (vfw.h)
Fungsi DrawDib mengubah parameter DrawDib DC atau menginisialisasi DrawDib DC baru.
Sintaks
BOOL VFWAPI DrawDibBegin(
HDRAWDIB hdd,
HDC hdc,
int dxDst,
int dyDst,
LPBITMAPINFOHEADER lpbi,
int dxSrc,
int dySrc,
UINT wFlags
);
Parameter
hdd
Menangani ke DrawDib DC.
hdc
Tangani ke DC untuk menggambar. Parameter ini bersifat opsional.
dxDst
Lebar, di unit klien MM_TEXT , persegi panjang tujuan.
dyDst
Tinggi, di unit klien MM_TEXT , persegi panjang tujuan.
lpbi
Penunjuk ke struktur BITMAPINFOHEADER yang berisi format gambar. Tabel warna untuk DIB mengikuti format gambar dan anggota biHeight harus berupa nilai positif.
dxSrc
Lebar, dalam piksel, persegi panjang sumber.
dySrc
Tinggi, dalam piksel, persegi panjang sumber.
wFlags
Bendera yang berlaku untuk fungsi. Nilai berikut didefinisikan.
Nilai | Makna |
---|---|
DDF_ANIMATE | Memungkinkan animasi palet. Jika nilai ini ada, DrawDib mencadangkan entri sebanyak mungkin dengan mengatur PC_RESERVED dalam entri array palPalEntry dari struktur LOGPALETTE , dan palet dapat dianimasikan dengan menggunakan fungsi DrawDibChangePalette . Jika aplikasi Anda menggunakan fungsi DrawDibBegin dengan fungsi DrawDibDraw , atur nilai ini dengan DrawDibBegin daripada DrawDibDraw. |
DDF_BACKGROUNDPAL | Menyadari palet yang digunakan untuk menggambar sebagai tugas latar belakang, membiarkan palet saat ini digunakan untuk tampilan tidak berubah. (Nilai ini saling eksklusif dari DDF_SAME_HDC.) |
DDF_BUFFER | Menyebabkan DrawDib mencoba menggunakan buffer di luar layar sehingga DDF_UPDATE dapat digunakan. Ini menonaktifkan dekompresi dan menggambar langsung ke layar. Jika DrawDib tidak dapat membuat buffer di luar layar, DrawDib akan mendekompresi atau menggambar langsung ke layar. Untuk informasi selengkapnya, lihat nilai DDF_UPDATE dan DDF_DONTDRAW yang dijelaskan untuk DrawDibDraw. |
DDF_DONTDRAW | Gambar saat ini tidak digambar, tetapi didekompresi. DDF_UPDATE dapat digunakan nanti untuk menggambar gambar. Bendera ini menggantikan bendera DDF_PREROLL . |
DDF_FULLSCREEN | Tidak didukung. |
DDF_HALFTONE | Selalu alihkan DIB ke palet standar terlepas dari palet DIB. Jika aplikasi Anda menggunakan DrawDibBegin dengan DrawDibDraw, atur nilai ini dengan DrawDibBegin daripada DrawDibDraw. |
DDF_JUSTDRAWIT | Menggambar gambar dengan menggunakan GDI. Melarang fungsi DrawDib mendekompresi, meregangkan, atau mencairkan gambar. Ini strip DrawDib kemampuan yang membedakannya dari fungsi StretchDIBits . |
DDF_SAME_DRAW | Gunakan parameter gambar saat ini untuk DrawDibDraw. Gunakan nilai ini hanya jika lpbi, dxDest, dyDest, dxSrc, dan dySrc tidak berubah sejak menggunakan DrawDibDraw atau DrawDibBegin. Bendera ini menggantikan bendera DDF_SAME_DIB dan DDF_SAME_SIZE . |
DDF_SAME_HDC | Gunakan handel DC saat ini dan palet yang saat ini terkait dengan DC. |
DDF_UPDATE | Bitmap terakhir yang di-buffer perlu digambar ulang. Jika gambar gagal dengan nilai ini, gambar yang di-buffer tidak tersedia dan gambar baru perlu ditentukan sebelum tampilan dapat diperbarui. |
Mengembalikan nilai
Mengembalikan TRUE jika berhasil atau FALSE sebaliknya.
Keterangan
Fungsi ini bersiap untuk menggambar DIB yang ditentukan oleh lpbi ke DC. Gambar direntangkan ke ukuran yang ditentukan oleh dxDest dan dyDest. Jika dxDest dan dyDest diatur ke −1, DIB ditarik ke skala 1:1 tanpa peregangan.
Anda dapat memperbarui bendera DrawDib DC dengan menerbitkan ulang DrawDibBegin, menentukan bendera baru, dan mengubah setidaknya salah satu pengaturan berikut: dxDest, dyDest, lpbi, dxSrc, atau dySrc.
Jika parameter DrawDibBegin tidak berubah, panggilan berikutnya ke fungsi tidak berpengaruh.
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 | vfw.h |
Pustaka | Vfw32.lib |
DLL | Msvfw32.dll |