LinearGradientBrush::Metode SetBlend (gdiplusbrush.h)

Metode LinearGradientBrush::SetBlend mengatur faktor campuran dan posisi campuran sikat gradien linier ini untuk membuat campuran kustom.

Sintaks

Status SetBlend(
  [in] const REAL *blendFactors,
  [in] const REAL *blendPositions,
  [in] INT        count
);

Parameter

[in] blendFactors

Jenis: const REAL*

Penunjuk ke array angka riil yang menentukan faktor campuran. Setiap angka dalam array menentukan persentase warna akhir dan harus dalam rentang 0,0 hingga 1,0.

[in] blendPositions

Jenis: const REAL*

Penunjuk ke array angka riil yang menentukan posisi campuran. Setiap angka dalam array menunjukkan persentase jarak antara batas awal dan batas akhir dan berada dalam rentang 0,0 hingga 1,0, di mana 0,0 menunjukkan batas awal gradien dan 1,0 menunjukkan batas akhir. Harus ada setidaknya dua posisi yang ditentukan: posisi pertama, yang selalu 0,0f, dan posisi terakhir, yang selalu 1,0f. Jika tidak, perilaku tidak terdefinis. Posisi campuran antara 0,0 dan 1,0 menunjukkan garis, paralel dengan garis batas, yang merupakan pecahan jarak tertentu dari batas awal ke batas akhir. Misalnya, posisi campuran 0,7 menunjukkan garis yang 70 persen dari jarak dari batas awal ke batas akhir. Warnanya konstan pada garis yang sejajar dengan garis batas.

[in] count

Jenis: INT

Bilangan bulat yang menentukan jumlah elemen dalam array blendFactors . Ini sama dengan jumlah elemen dalam array blendPositions . Faktor campuran pada indeks array tertentu sesuai dengan posisi campuran pada indeks array yang sama.

Menampilkan nilai

Jenis: Status

Jika metode berhasil, metode mengembalikan Ok, yang merupakan elemen dari enumerasi Status .

Jika metode gagal, metode mengembalikan salah satu elemen lain dari enumerasi Status .

Keterangan

Objek LinearGradientBrush memiliki dua batas. Ketika Anda mengisi area dengan sikat gradien linier, warna berubah secara bertahap saat Anda berpindah dari batas awal ke batas akhir. Secara default, warna secara linear terkait dengan jarak, tetapi Anda dapat menyesuaikan hubungan antara warna dan jarak dengan memanggil metode LinearGradientBrush::SetBlend .

Contoh

Contoh berikut membuat sikat gradien linier, mengatur campuran kustom, dan menggunakan kuas untuk mengisi persegi panjang.

VOID Example_SetBlend(HDC hdc)
{
   Graphics myGraphics(hdc);

   REAL factors[4] = {0.0f, 0.4f, 0.6f, 1.0f};
   REAL positions[4] = {0.0f, 0.2f, 0.8f, 1.0f};
   Rect rect(0, 0, 100, 50);

   LinearGradientBrush linGrBrush(
      rect,
      Color(255, 255, 0, 0),  // red
      Color(255, 0, 0, 255),  // blue
      LinearGradientModeHorizontal);

   linGrBrush.SetBlend(factors, positions, 4);
   myGraphics.FillRectangle(&linGrBrush, rect);
}

Persyaratan

   
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 gdiplusbrush.h (termasuk Gdiplus.h)
Pustaka Gdiplus.lib
DLL Gdiplus.dll

Lihat juga

Kuas dan Bentuk Terisi

Warna

Membuat Gradien Linear

Mengisi Bentuk dengan Gradien Warna

LinearGradientBrush

LinearGradientBrush::GetBlend

Rect