次の方法で共有


D2D1_LAYER_PARAMETERS 構造体

レイヤー リソースのコンテンツの境界、マスク情報、不透明度の設定、およびその他のオプションを格納します。

構文

struct D2D1_LAYER_PARAMETERS {
  D2D1_RECT_F         contentBounds;
  ID2D1Geometry *     geometricMask;
  D2D1_ANTIALIAS_MODE maskAntialiasMode;
  D2D1_MATRIX_3X2_F   maskTransform;
  FLOAT               opacity;
  ID2D1Brush *        opacityBrush;
  D2D1_LAYER_OPTIONS  layerOptions;
};

メンバー

  • contentBounds
    D2D1_RECT_F レイヤーのコンテンツの境界。この境界の外側にあるコンテンツがレンダリングされる保証はありません。
  • geometricMask
    ID2D1Geometry ジオメトリ マスクは、レンダー ターゲットに統合されているレイヤーの領域を指定します。
  • maskAntialiasMode
    D2D1_ANTIALIAS_MODE geometricMask のアンチエイリアシング モードを指定する値。
  • maskTransform
    D2D1_MATRIX_3X2_F レイヤーの作成時にジオメトリ マスクに適用される変換を指定する値。
  • opacity
    FLOAT ターゲットに統合されるときにレイヤー内のすべてのリソースに一律に適用される不透明度の値。
  • opacityBrush
    ID2D1Brush レイヤーの不透明度の変更に使用されるブラシ。ブラシはレイヤーにマップされ、マップされた各ブラシのピクセルのアルファ チャネルは対応するレイヤーのピクセルに対して乗算されます。
  • layerOptions
    D2D1_LAYER_OPTIONS レイヤーが ClearType アンチエイリアシングを使用してテキストをレンダリングするかどうかを指定する値。

次の例は、CreateLayerPushLayer、および PopLayer の使用方法を示しています。D2D1_LAYER_PARAMETERS 構造体内のすべてのフィールドは既定値に設定されますが、opacityBrush だけは ID2D1RadialGradientBrush に設定されます。

  // Create a layer.
ID2D1Layer *pLayer = NULL;
hr = pRT->CreateLayer(NULL, &pLayer);

if (SUCCEEDED(hr))
{
    pRT->SetTransform(D2D1::Matrix3x2F::Translation(300, 250));

    // Push the layer with the content bounds.
    pRT->PushLayer(
        D2D1::LayerParameters(
            D2D1::InfiniteRect(),
            NULL,
            D2D1_ANTIALIAS_MODE_PER_PRIMITIVE,
            D2D1::IdentityMatrix(),
            1.0,
            m_pRadialGradientBrush,
            D2D1_LAYER_OPTIONS_NONE),
        pLayer
        );

    pRT->DrawBitmap(m_pBambooBitmap, D2D1::RectF(0, 0, 190, 127));

    m_pRenderTarget->FillRectangle(
        D2D1::RectF(25.f, 25.f, 50.f, 50.f), 
        m_pSolidColorBrush
        );
    m_pRenderTarget->FillRectangle(
        D2D1::RectF(50.f, 50.f, 75.f, 75.f),
        m_pSolidColorBrush
        ); 
    m_pRenderTarget->FillRectangle(
        D2D1::RectF(75.f, 75.f, 100.f, 100.f),
        m_pSolidColorBrush
        );    
 
    m_pRenderTarget->PopLayer();
}
SafeRelease(&pLayer);

その他の例については、「レイヤーの概要」を参照してください。

要件

クライアントの最小要件

Windows 7, Windows Vista SP2 および Windows Vista 用のプラットフォーム更新プログラム

サーバーの最小要件

Windows Server 2008 R2, Windows Server 2008 SP2 および Windows Server 2008 用のプラットフォーム更新プログラム

ヘッダー

D2d1.h

参照

レイヤーの概要