PathGradientBrush ::GetInterpolationColorCount, méthode (gdipluspath.h)
La méthode PathGradientBrush ::GetInterpolationColorCount obtient le nombre de couleurs prédéfinies actuellement spécifiées pour ce pinceau de dégradé de chemin.
Syntaxe
INT GetInterpolationColorCount();
Valeur de retour
Type : INT
Cette méthode retourne le nombre de couleurs prédéfinies actuellement spécifiées pour ce pinceau de dégradé de chemin d’accès.
Remarques
Un pinceau dégradé de chemin simple a deux couleurs : une couleur de limite et une couleur centrale. Lorsque vous peignez avec un tel pinceau, la couleur passe progressivement de la couleur de la limite à la couleur du centre à mesure que vous passez du chemin de la limite au point central. Vous pouvez créer un dégradé plus complexe en spécifiant un tableau de couleurs prédéfinies et un tableau de positions de fusion.
Vous pouvez obtenir les couleurs d’interpolation et les positions d’interpolation actuellement définies pour un objet PathGradientBrush en appelant la méthode PathGradientBrush ::GetInterpolationColors de cet objet PathGradientBrush . Avant d’appeler la méthode PathGradientBrush ::GetInterpolationColors , vous devez allouer deux tampons : l’un pour contenir le tableau des couleurs d’interpolation et l’autre pour contenir le tableau de positions d’interpolation. Vous pouvez appeler la méthode PathGradientBrush ::GetInterpolationColorCount de l’objet PathGradientBrush pour déterminer la taille requise de ces mémoires tampons. La taille de la mémoire tampon de couleurs est la valeur de retour de GetInterpolationColorCount multipliée par sizeof(Color). La taille de la mémoire tampon de position est la valeur de PathGradientBrush ::GetInterpolationColorCount multipliée par sizeof( REAL).
Exemples
L’exemple suivant crée un objet PathGradientBrush à partir d’un chemin triangulaire. Le code définit les couleurs prédéfinies sur rouge, bleu et aqua, et définit les positions de fusion sur 0, 0,6 et 1. Le code appelle la méthode PathGradientBrush ::GetInterpolationColorCount de l’objet PathGradientBrush pour obtenir le nombre de couleurs prédéfinies actuellement définies pour le pinceau. Ensuite, le code alloue deux mémoires tampons : l’une pour contenir le tableau de couleurs prédéfinies et l’autre pour contenir le tableau de positions de fusion. L’appel à la méthode PathGradientBrush ::GetInterpolationColors de l’objet PathGradientBrush remplit les mémoires tampons avec les couleurs prédéfinies et les positions de fusion. Enfin, le code remplit un petit carré avec chacune des couleurs prédéfinies.
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;
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP, Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | gdipluspath.h (include Gdiplus.h) |
Bibliothèque | Gdiplus.lib |
DLL | Gdiplus.dll |
Voir aussi
Création d’un dégradé de chemin
Remplissage d’une forme avec un dégradé de couleur