Bitmap::ApplyEffect(Bitmap**,INT,Effect*,RECT*,RECT*,Bitmap**) , méthode (gdiplusheaders.h)
La méthode Bitmap::ApplyEffect crée un objet Bitmap en appliquant un effet spécifié à un objet Bitmap existant.
Syntaxe
Status ApplyEffect(
[in] Bitmap **inputs,
[in] INT numInputs,
[in] Effect *effect,
[in] RECT *ROI,
[out] RECT *outputRect,
[out] Bitmap **output
);
Paramètres
[in] inputs
Type : Bitmap**
Adresse d’un pointeur vers un objet Bitmap auquel l’effet est appliqué.
[in] numInputs
Type : INT
Entier qui spécifie le nombre de bitmaps d’entrée. Ce paramètre doit être défini sur 1.
[in] effect
Type : Effet*
Pointeur vers un instance d’un descendant de la classe Effect. Le descendant (par exemple, un objet Blur ) spécifie l’effet appliqué.
[in] ROI
Type : RECT*
Pointeur vers une structure RECT qui spécifie la partie de la bitmap d’entrée utilisée.
[out] outputRect
Type : RECT*
Pointeur vers une structure RECT qui reçoit la partie de la bitmap d’entrée utilisée. Si le rectangle spécifié par roi se trouve entièrement dans la bitmap d’entrée, le rectangle retourné dans outputRect est identique au retour sur investissement. Si une partie du rectangle spécifiée par roi se trouve en dehors de la bitmap d’entrée, le rectangle retourné dans outputRect est la partie du retour sur investissement qui se trouve dans la bitmap d’entrée. Passez la valeur NULL si vous ne souhaitez pas recevoir le rectangle de sortie.
[out] output
Type : Bitmap**
Adresse d’une variable qui reçoit un pointeur vers le nouvel objet Bitmap .
Valeur retournée
Type : État
Si la méthode réussit, elle retourne Ok, qui est un élément de l’énumération Status .
Si la méthode échoue, elle retourne l’un des autres éléments de l’énumération Status .
Notes
Bitmap::ApplyEffect retourne un pointeur vers un nouvel objet Bitmap . Une fois que vous avez terminé d’utiliser cet objet Bitmap , appelez delete pour libérer la mémoire qu’il occupe.
Exemples
L’exemple suivant crée deux objets Bitmap : inputBitmap et outputBitmap. Tout d’abord, inputBitmap est construit à partir d’un fichier BMP. Ensuite, outputBitmap est créé en passant l’adresse d’inputBitmap à la méthode Bitmap::ApplyEffect . Bitmap::ApplyEffect prend la partie d’inputBitmap spécifiée par rectOfInterest et augmente le contraste comme spécifié par briCon, un objet BrightnessContrast .
VOID Example_BrightnessContrastApplyEffect2(HDC hdc)
{
Graphics graphics(hdc);
Bitmap* inputBitmap = new Bitmap(L"Picture.bmp");
Bitmap* outputBitmap = NULL;
RECT rectOfInterest = {10, 12, 100, 80};
BrightnessContrastParams briConParams;
briConParams.brightnessLevel = 0;
briConParams.contrastLevel = 25;
BrightnessContrast briCon;
briCon.SetParameters(&briConParams);
// Draw the original image.
graphics.DrawImage(inputBitmap, 20, 20);
// Apply the change in contrast.
Bitmap::ApplyEffect(
&inputBitmap, 1, &briCon, &rectOfInterest, NULL, &outputBitmap);
// Draw the new image.
graphics.DrawImage(outputBitmap, 200, 20);
delete inputBitmap;
delete outputBitmap;
}
Spécifications
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | gdiplusheaders.h (inclure Gdiplus.h) |
Bibliothèque | Gdiplus.lib |
DLL | Gdiplus.dll |