Compartir a través de


Método Graphics::GetCompositingMode (gdiplusgraphics.h)

El método Graphics::GetCompositingMode obtiene el modo de redacción establecido actualmente para este objeto Graphics .

Sintaxis

CompositingMode GetCompositingMode();

Valor devuelto

Tipo: CompositingMode

Este método devuelve un elemento de la enumeración CompositingMode que indica el modo de redacción establecido actualmente para este objeto Graphics .

Comentarios

Supongamos que crea un objeto SolidBrush basado en un color que tiene un componente alfa de 192, que es aproximadamente el 75 por ciento del 255. Si el objeto Graphics tiene su modo de redacción establecido en CompositingModeSourceOver, las áreas rellenas con el pincel sólido son una mezcla que tiene un color de pincel del 75 % y un color de fondo del 25 %. Si el objeto Graphics tiene su modo de composición establecido en CompositingModeSourceCopy, el color de fondo no se combina con el color del pincel. Sin embargo, el color representado por el pincel tiene una intensidad del 75 por ciento de lo que sería si el componente alfa fuera 255.

Ejemplos

En el ejemplo siguiente se crea un objeto Graphics y se establece su modo de composición en CompositingModeSourceCopy. El código crea un objeto SolidBrush basado en un color con un componente alfa de 128. El código pasa la dirección de ese pincel al método Graphics::FillRectangle del objeto Graphics para rellenar un rectángulo con un color que no se combina con el color de fondo. La llamada al método Graphics::GetCompositingMode del objeto Graphics muestra cómo obtener el modo de redacción (que ya se conoce en este caso). El código determina si el modo de redacción es CompositingModeSourceCopy y, si es así, lo cambia a CompositingModeSourceOver. A continuación, el código llama a Graphics::FillRectangle una segunda vez para rellenar un rectángulo con un color que es una mezcla media y media del color del pincel y el color de fondo.

VOID Example_GetCompositingMode(HDC hdc)
{
   Graphics graphics(hdc);
   
   graphics.SetCompositingMode(CompositingModeSourceCopy);
   SolidBrush alphaBrush(Color(128, 255, 0, 0));
   graphics.FillRectangle(&alphaBrush, 0, 0, 100, 100);
   
   // Get the compositing mode.
   CompositingMode compMode = graphics.GetCompositingMode();
   
   // Change the compositing mode if it is CompositingModeSourceCopy.
   if(compMode == CompositingModeSourceCopy)
   {
      graphics.SetCompositingMode(CompositingModeSourceOver);
   }  
  
   graphics.FillRectangle(&alphaBrush, 0, 100, 100, 100);
}

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP, Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado gdiplusgraphics.h (include Gdiplus.h)
Library Gdiplus.lib
Archivo DLL Gdiplus.dll

Consulte también

Líneas y rellenos con mezcla alfa

Elementos gráficos

Graphics::GetCompositingQuality

Graphics::SetCompositingMode

Graphics::SetCompositingQuality

HatchBrush

Características nuevas

SolidBrush

Usar el modo de composición para controlar la combinación alfa