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

Garis dan Isian Penpaduan Alfa

Grafik

Grafik::GetCompositingQuality

Grafis::SetCompositingMode

Grafis::SetCompositingQuality

HatchBrush

Fitur baru

SolidBrush

Menggunakan Mode Komposit untuk Mengontrol Penpaduan Alfa