Graphics::GetCompositingMode メソッド (gdiplusgraphics.h)

Graphics::GetCompositingMode メソッドは、この Graphics オブジェクトに対して現在設定されている合成モードを取得します。

構文

CompositingMode GetCompositingMode();

戻り値

種類: CompositingMode

このメソッドは、この Graphics オブジェクトに現在設定されている合成モードを示す CompositingMode 列挙の要素を返します。

注釈

アルファ成分が 192 で、255 の約 75% である色に基づいて SolidBrush オブジェクトを作成するとします。 Graphics オブジェクトの合成モードが CompositingModeSourceOver に設定されている場合、ソリッド ブラシで塗りつぶされた領域は、ブラシの色が 75%、背景色が 25% のブレンドになります。 Graphics オブジェクトの合成モードが CompositingModeSourceCopy に設定されている場合、背景色はブラシの色とブレンドされません。 ただし、ブラシによってレンダリングされる色の強度は、アルファ 成分が 255 の場合の 75% です。

次の例では、 Graphics オブジェクトを作成し、その合成モードを CompositingModeSourceCopy に設定します。 このコードでは、アルファ成分が 128 の色に基づいて SolidBrush オブジェクトを作成します。 このコードは、そのブラシのアドレスを Graphics オブジェクトの Graphics::FillRectangle メソッドに渡して、背景色とブレンドされていない色で四角形を塗りつぶします。 Graphics オブジェクトの Graphics::GetCompositingMode メソッドの呼び出しは、合成モードを取得する方法を示しています (この例では既にわかっています)。 このコードは、合成モードが CompositingModeSourceCopy であるかどうかを判断し、その場合は CompositingModeSourceOver に変更します。 次に、Graphics ::FillRectangle を 2 回目に呼び出して、ブラシの色と背景色の半分と半分のブレンドである色で四角形を塗りつぶします。

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);
}

要件

要件
サポートされている最小のクライアント Windows XP、Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー gdiplusgraphics.h (Gdiplus.h を含む)
Library Gdiplus.lib
[DLL] Gdiplus.dll

関連項目

アルファ ブレンドの直線と塗りつぶし

グラフィックス

Graphics::GetCompositingQuality

Graphics::SetCompositingMode

Graphics::SetCompositingQuality

HatchBrush

新機能

Solidbrush

合成モードを使用してアルファ ブレンドを制御する