Metodo Bitmap::ApplyEffect(Bitmap**,INT,Effect*,RECT*,RECT*,Bitmap**) (gdiplusheaders.h)

Il metodo Bitmap::ApplyEffect crea un nuovo oggetto Bitmap applicando un effetto specificato a un oggettoBitmap esistente.

Sintassi

Status ApplyEffect(
  [in]  Bitmap **inputs,
  [in]  INT    numInputs,
  [in]  Effect *effect,
  [in]  RECT   *ROI,
  [out] RECT   *outputRect,
  [out] Bitmap **output
);

Parametri

[in] inputs

Tipo: Bitmap**

Indirizzo di un puntatore a un oggetto Bitmap a cui viene applicato l'effetto.

[in] numInputs

Tipo: INT

Intero che specifica il numero di bitmap di input. Questo parametro deve essere impostato su 1.

[in] effect

Tipo: Effetto*

Puntatore a un'istanza di un discendente della classe Effect . Il discendente (ad esempio, un oggetto Blur ) specifica l'effetto applicato.

[in] ROI

Tipo: RECT*

Puntatore a una struttura RECT che specifica la parte della bitmap di input usata.

[out] outputRect

Tipo: RECT*

Puntatore a una struttura RECT che riceve la parte della bitmap di input usata. Se il rettangolo specificato dal ROI si trova interamente all'interno della bitmap di input, il rettangolo restituito in outputRect corrisponde al ROI. Se parte del rettangolo specificato da ROI si trova all'esterno della bitmap di input, il rettangolo restituito in outputRect è la parte del ROI che si trova all'interno della bitmap di input. Passare NULL se non si vuole ricevere il rettangolo di output.

[out] output

Tipo: Bitmap**

Indirizzo di una variabile che riceve un puntatore al nuovo oggetto Bitmap .

Valore restituito

Tipo: Stato

Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .

Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .

Commenti

Bitmap::ApplyEffect restituisce un puntatore a un nuovo oggetto Bitmap . Al termine dell'uso di tale oggetto Bitmap , chiamare elimina per liberare la memoria occupata.

Esempio

Nell'esempio seguente vengono creati due oggetti Bitmap : inputBitmap e outputBitmap. Prima di tutto, inputBitmap viene costruito da un file BMP. Viene quindi creato outputBitmap passando l'indirizzo di inputBitmap al metodo Bitmap::ApplyEffect . Bitmap::ApplyEffect accetta la parte di inputBitmap specificata da rectOfInterest e aumenta il contrasto come specificato da briCon, un oggetto 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;
}

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione gdiplusheaders.h (include Gdiplus.h)
Libreria Gdiplus.lib
DLL Gdiplus.dll

Vedi anche

Bitmap

Metodi Bitmap::ApplyEffect