Fungsi DrawDibDraw (vfw.h)
Fungsi DrawDibDraw menggambar DIB ke layar.
Sintaks
BOOL VFWAPI DrawDibDraw(
HDRAWDIB hdd,
HDC hdc,
int xDst,
int yDst,
int dxDst,
int dyDst,
LPBITMAPINFOHEADER lpbi,
LPVOID lpBits,
int xSrc,
int ySrc,
int dxSrc,
int dySrc,
UINT wFlags
);
Parameter
hdd
Menangani ke DrawDib DC.
hdc
Tangani ke DC.
xDst
Koordinat x, dalam koordinat klien MM_TEXT , dari sudut kiri atas persegi panjang tujuan.
yDst
Koordinat y, dalam koordinat klien MM_TEXT , dari sudut kiri atas persegi panjang tujuan.
dxDst
Lebar, dalam koordinat klien MM_TEXT , persegi panjang tujuan. Jika dxDst adalah −1, lebar bitmap digunakan.
dyDst
Tinggi, dalam koordinat klien MM_TEXT , persegi panjang tujuan. Jika dyDst adalah −1, tinggi bitmap digunakan.
lpbi
Penunjuk ke struktur BITMAPINFOHEADER yang berisi format gambar. Tabel warna untuk DIB dalam BITMAPINFOHEADER mengikuti format dan anggota biHeight harus berupa nilai positif; DrawDibDraw tidak akan menggambar DIB terbalik.
lpBits
Penunjuk ke buffer yang berisi bit bitmap.
xSrc
Koordinat x, dalam piksel, dari sudut kiri atas persegi panjang sumber. Koordinat (0,0) mewakili sudut kiri atas bitmap.
ySrc
Koordinat y, dalam piksel, dari sudut kiri atas persegi panjang sumber. Koordinat (0,0) mewakili sudut kiri atas bitmap.
dxSrc
Lebar, dalam piksel, persegi panjang sumber.
dySrc
Tinggi, dalam piksel, persegi panjang sumber.
wFlags
Bendera yang berlaku untuk menggambar. Nilai berikut didefinisikan.
Nilai | Makna |
---|---|
DDF_BACKGROUNDPAL | Mewujudkan palet yang digunakan untuk menggambar di latar belakang, membiarkan palet aktual yang digunakan untuk tampilan tidak berubah. Nilai ini hanya valid jika DDF_SAME_HDC tidak ditetapkan. |
DDF_DONTDRAW | Gambar saat ini didekompresi tetapi tidak digambar. 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 fungsi DrawDibBegin , tetapkan nilai ini di DrawDibBegin daripada di DrawDibDraw. |
DDF_HURRYUP | Data tidak harus digambar (yaitu, dapat dihilangkan) dan DDF_UPDATE tidak akan digunakan untuk memanggil kembali informasi ini. DrawDib memeriksa nilai ini hanya jika diperlukan untuk membangun bingkai berikutnya; jika tidak, nilai diabaikan. Nilai ini biasanya digunakan untuk menyinkronkan video dan audio. Saat menyinkronkan data, aplikasi harus mengirim gambar dengan nilai ini jika driver perlu menyangga bingkai untuk mendekompresi bingkai berikutnya. |
DDF_NOTKEYFRAME | Data DIB bukan bingkai kunci. |
DDF_SAME_HDC | Gunakan handel DC saat ini dan palet yang saat ini terkait dengan DC. |
DDF_SAME_DRAW | Gunakan parameter gambar saat ini untuk DrawDibDraw. Gunakan nilai ini hanya jika lpbi, dxDst, dyDst, dxSrc, dan dySrc tidak berubah sejak menggunakan DrawDibDraw atau DrawDibBegin. DrawDibDraw biasanya memeriksa parameter, dan jika telah berubah, DrawDibBegin menyiapkan DrawDib DC untuk menggambar. Bendera ini menggantikan bendera DDF_SAME_DIB dan DDF_SAME_SIZE . |
DDF_UPDATE | Bitmap terakhir yang di-buffer adalah untuk 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
DDF_DONTDRAW menyebabkan DrawDibDraw didekompresi tetapi tidak menampilkan gambar. Panggilan berikutnya ke DrawDibDraw yang menentukan DDF_UPDATE menampilkan gambar.
Jika DrawDib DC tidak memiliki buffer di luar layar yang ditentukan, menentukan DDF_DONTDRAW menyebabkan bingkai segera digambar ke layar. Panggilan berikutnya ke DrawDibDraw yang menentukan DDF_UPDATE gagal.
Meskipun diatur pada waktu yang berbeda, DDF_UPDATE dan DDF_DONTDRAW dapat digunakan bersama-sama untuk membuat gambar komposit di luar layar. Saat gambar di luar layar selesai, Anda dapat menampilkan gambar dengan memanggil DrawDibDraw.
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 |