Fungsi EngGradientFill (winddi.h)
Fungsi EngGradientFill menaungi primitif yang ditentukan.
Sintaks
ENGAPI BOOL EngGradientFill(
SURFOBJ *psoDest,
CLIPOBJ *pco,
XLATEOBJ *pxlo,
TRIVERTEX *pVertex,
ULONG nVertex,
PVOID pMesh,
ULONG nMesh,
RECTL *prclExtents,
POINTL *pptlDitherOrg,
[in] ULONG ulMode
);
Parameter
psoDest
Arahkan ke struktur SURFOBJ yang mengidentifikasi permukaan untuk menggambar.
pco
Penunjuk ke struktur CLIPOBJ . Rutinitas layanan CLIPOBJ_Xxx disediakan untuk menghitung wilayah klip sebagai satu set persegi panjang. Enumerasi ini membatasi area tujuan yang dimodifikasi. Jika memungkinkan, GDI menyederhanakan kliping yang terlibat.
pxlo
Penunjuk ke struktur XLATEOBJ . Struktur ini menunjukkan bagaimana indeks warna harus diterjemahkan antara format RGB 32 bpp dan tujuan. Driver bertanggung jawab untuk mengonversi nilai warna COLOR16 input ke RGB.
pVertex
Arahkan ke array struktur TRIVERTEX, dengan setiap entri berisi informasi posisi dan warna. Struktur TRIVERTEX dijelaskan dalam dokumentasi Microsoft Windows SDK.
nVertex
Menentukan jumlah struktur TRIVERTEX dalam array tempat pVertex menunjuk .
pMesh
Arahkan ke array struktur yang menentukan konektivitas elemen TRIVERTEX tempat pVertex menunjuk.
Ketika persegi panjang sedang digambar, pMesh menunjuk ke array struktur GRADIENT_RECT, yang masing-masing menentukan dua elemen TRIVERTEX yang menentukan persegi panjang. Elemen TRIVERTEX dapat mewakili sepasang simpul persegi panjang yang berlawanan secara diagonal. Gambar persegi panjang bersifat eksklusif kanan bawah. TRIVERTEX dan GRADIENT_RECT didefinisikan dalam dokumentasi Windows SDK.
Ketika segitiga digambar, pMesh menunjuk ke array struktur GRADIENT_TRIANGLE, yang masing-masing menentukan tiga elemen TRIVERTEX yang menentukan segitiga. Gambar segitiga bersifat eksklusif kanan bawah. Struktur GRADIENT_TRIANGLE ditentukan dalam dokumentasi Windows SDK.
nMesh
Menentukan jumlah elemen dalam array tempat pMesh menunjuk.
prclExtents
Penunjuk ke struktur RECTL yang menentukan area tempat gambar gradien terjadi. Titik ditentukan dalam sistem koordinat permukaan tujuan. Parameter ini berguna dalam memperkirakan ukuran operasi gambar.
pptlDitherOrg
Pointer ke struktur POINTL yang menentukan asal pada permukaan untuk dithering. Piksel kiri atas pola dither selaras dengan titik ini.
[in] ulMode
Menentukan mode gambar saat ini dan cara menginterpretasikan array yang menunjuk pMesh . Parameter ini bisa menjadi salah satu nilai berikut:
GRADIENT_FILL_RECT_H
Parameter pMesh menunjuk ke array struktur GRADIENT_RECT. Setiap persegi panjang akan dibayangi dari kiri ke kanan.
GRADIENT_FILL_RECT_V
Parameter pMesh menunjuk ke array struktur GRADIENT_RECT. Setiap persegi panjang harus dibayangi dari atas ke bawah.
GRADIENT_FILL_TRIANGLE
Parameter pMesh menunjuk ke array struktur GRADIENT_TRIANGLE.
Mengembalikan nilai
EngGradientFill mengembalikan TRUE setelah berhasil. Jika tidak, ia melaporkan kesalahan dan mengembalikan FALSE.
Keterangan
Driver harus memanggil EngGradientFill jika telah menghubungkan DrvGradientFill dan dipanggil untuk melakukan sesuatu yang tidak didukungnya.
Rumus yang digunakan untuk menghitung nilai warna di setiap piksel bergantung pada nilai ulMode sebagai berikut:
GDI mengabaikan nilai alfa simpul, membiarkan saluran alfa tidak berubah untuk permukaan yang mendukung alfa.
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 |