Grafis::Metode GetCompositingMode (gdiplusgraphics.h)
Metode Graphics::GetCompositingMode mendapatkan mode komposit yang saat ini diatur untuk objek Grafis ini.
Sintaks
CompositingMode GetCompositingMode();
Mengembalikan nilai
Jenis: CompositingMode
Metode ini mengembalikan elemen enumerasi CompositingMode yang menunjukkan mode komposit yang saat ini diatur untuk objek Grafis ini.
Keterangan
Misalkan Anda membuat objek SolidBrush berdasarkan warna yang memiliki komponen alfa 192, yaitu sekitar 75 persen dari 255. Jika objek Grafis Anda memiliki mode komposit yang diatur ke CompositingModeSourceOver, maka area yang diisi dengan kuas padat adalah perpaduan yaitu 75 persen warna sikat dan 25 persen warna latar belakang. Jika objek Grafis Anda memiliki mode kompositnya yang diatur ke CompositingModeSourceCopy, maka warna latar belakang tidak dipadukan dengan warna kuas. Namun, warna yang dirender oleh kuas memiliki intensitas yaitu 75 persen dari apa jadinya jika komponen alfa adalah 255.
Contoh
Contoh berikut membuat objek Grafis dan mengatur mode kompositnya ke CompositingModeSourceCopy. Kode ini membuat objek SolidBrush berdasarkan warna dengan komponen alfa 128. Kode meneruskan alamat kuas tersebut ke metode Graphics::FillRectangle objek Graphics untuk mengisi persegi panjang dengan warna yang tidak dipadukan dengan warna latar belakang. Panggilan ke metode Graphics::GetCompositingMode dari objek Graphics menunjukkan cara mendapatkan mode komposit (yang sudah diketahui dalam hal ini). Kode menentukan apakah mode komposit adalah CompositingModeSourceCopy dan jika demikian, mengubahnya menjadi CompositingModeSourceOver. Kemudian kode memanggil Graphics::FillRectangle untuk kedua kalinya untuk mengisi persegi panjang dengan warna yang merupakan perpaduan setengah warna kuas dan warna latar belakang.
VOID Example_GetCompositingMode(HDC hdc)
{
Graphics graphics(hdc);
graphics.SetCompositingMode(CompositingModeSourceCopy);
SolidBrush alphaBrush(Color(128, 255, 0, 0));
graphics.FillRectangle(&alphaBrush, 0, 0, 100, 100);
// Get the compositing mode.
CompositingMode compMode = graphics.GetCompositingMode();
// Change the compositing mode if it is CompositingModeSourceCopy.
if(compMode == CompositingModeSourceCopy)
{
graphics.SetCompositingMode(CompositingModeSourceOver);
}
graphics.FillRectangle(&alphaBrush, 0, 100, 100, 100);
}
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP, Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | gdiplusgraphics.h (termasuk Gdiplus.h) |
Pustaka | Gdiplus.lib |
DLL | Gdiplus.dll |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk