PathGradientBrush::Metode GetInterpolationColorCount (gdipluspath.h)
Metode PathGradientBrush::GetInterpolationColorCount mendapatkan jumlah warna preset yang saat ini ditentukan untuk kuas gradien jalur ini.
Sintaks
INT GetInterpolationColorCount();
Mengembalikan nilai
Jenis: INT
Metode ini mengembalikan jumlah warna prasetel yang saat ini ditentukan untuk sikat gradien jalur ini.
Keterangan
Sikat gradien jalur sederhana memiliki dua warna: warna batas dan warna tengah. Ketika Anda melukis dengan kuas seperti itu, warna berubah secara bertahap dari warna batas ke warna tengah saat Anda berpindah dari jalur batas ke titik tengah. Anda dapat membuat gradien yang lebih kompleks dengan menentukan array warna preset dan array posisi campuran.
Anda dapat memperoleh warna interpolasi dan posisi interpolasi yang saat ini diatur untuk objek PathGradientBrush dengan memanggil metode PathGradientBrush::GetInterpolationColors dari objek PathGradientBrush tersebut. Sebelum Anda memanggil metode PathGradientBrush::GetInterpolationColors , Anda harus mengalokasikan dua buffer: satu untuk menahan array warna interpolasi dan satu untuk menahan array posisi interpolasi. Anda dapat memanggil metode PathGradientBrush::GetInterpolationColorCount dari objek PathGradientBrush untuk menentukan ukuran buffer yang diperlukan. Ukuran buffer warna adalah nilai pengembalian GetInterpolationColorCount dikalikan dengan sizeof(Color). Ukuran buffer posisi adalah nilai PathGradientBrush::GetInterpolationColorCount dikalikan dengan sizeof( REAL).
Contoh
Contoh berikut membuat objek PathGradientBrush dari jalur segitiga. Kode mengatur warna prasetel ke merah, biru, dan aqua dan mengatur posisi campuran ke 0, 0,6, dan 1. Kode memanggil metode PathGradientBrush::GetInterpolationColorCount dari objek PathGradientBrush untuk mendapatkan jumlah warna preset yang saat ini ditetapkan untuk kuas. Selanjutnya, kode mengalokasikan dua buffer: satu untuk menahan array warna prasetel, dan satu untuk menahan array posisi campuran. Panggilan ke metode PathGradientBrush::GetInterpolationColors dari objek PathGradientBrush mengisi buffer dengan warna preset dan posisi campuran. Akhirnya kode mengisi persegi kecil dengan masing-masing warna preset.
VOID Example_GetInterpColors(HDC hdc)
{
Graphics graphics(hdc);
// Create a path gradient brush from an array of points, and
// set the interpolation colors for that brush.
Point points[] = {Point(100, 0), Point(200, 200), Point(0, 200)};
PathGradientBrush pthGrBrush(points, 3);
Color col[] = {
Color(255, 255, 0, 0), // red
Color(255, 0, 0, 255), // blue
Color(255, 0, 255, 255)}; // aqua
REAL pos[] = {
0.0f, // red at the boundary
0.6f, // blue 60 percent of the way from the boundary to the center
1.0f}; // aqua at the center
pthGrBrush.SetInterpolationColors(col, pos, 3);
// Obtain information about the path gradient brush.
INT colorCount = pthGrBrush.GetInterpolationColorCount();
Color* colors = new Color[colorCount];
REAL* positions = new REAL[colorCount];
pthGrBrush.GetInterpolationColors(colors, positions, colorCount);
// Fill a small square with each of the interpolation colors.
SolidBrush solidBrush(Color(255, 255, 255, 255));
for(INT j = 0; j < colorCount; ++j)
{
solidBrush.SetColor(colors[j]);
graphics.FillRectangle(&solidBrush, 15*j, 0, 10, 10);
}
delete [] colors;
delete [] positions;
}
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 | gdipluspath.h (termasuk Gdiplus.h) |
Pustaka | Gdiplus.lib |
DLL | Gdiplus.dll |
Lihat juga
Mengisi Bentuk dengan Gradien Warna
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