イメージ ブラシを作成します。 入力イメージには、ビットマップ、効果、コマンド リストなど、任意の種類のイメージを指定できます。
構文
HRESULT CreateImageBrush(
[in] ID2D1Image *image,
[in, ref] const D2D1_IMAGE_BRUSH_PROPERTIES & imageBrushProperties,
[in, ref, optional] const D2D1_BRUSH_PROPERTIES & brushProperties,
[out] ID2D1ImageBrush **imageBrush
);
パラメーター
[in] image
型: ID2D1Image*
イメージ ブラシのソースとして使用するイメージ。
[in, ref] imageBrushProperties
型: const D2D1_IMAGE_BRUSH_PROPERTIES
イメージ ブラシに固有のプロパティ。
[in, ref, optional] brushProperties
型: const D2D1_BRUSH_PROPERTIES
すべてのブラシに共通のプロパティ。
[out] imageBrush
型: ID2D1ImageBrush**
このメソッドが戻るときに、入力四角形へのポインターのアドレスを格納します。
戻り値
型: HRESULT
このメソッドは、HRESULTを返します。 使用できる値には、次の表に示す値が含まれますが、これらに限定されません。
HRESULT | 形容 |
---|---|
S_OK | エラーは発生しませんでした。 |
E_OUTOFMEMORY | Direct2D は、呼び出しを完了するのに十分なメモリを割り当てませんでした。 |
E_INVALIDARG | 無効な値がメソッドに渡されました。 |
備考
イメージ ブラシを使用して、任意のジオメトリ、不透明度マスク、またはテキストを塗りつぶすことができます。
このサンプルでは、イメージ ブラシを使用して四角形を描画する方法を示します。
HRESULT
CreatePatternBrush(
__in ID2D1DeviceContext *pDeviceContext,
__deref_out ID2D1ImageBrush **ppImageBrush
)
{
HRESULT hr = S_OK;
ID2D1Image *pOldTarget = NULL;
pDeviceContext->GetTarget(&pOldTarget);
ID2D1CommandList *pCommandList = NULL;
hr = pDeviceContext->CreateCommandList(&pCommandList);
if (SUCCEEDED(hr))
{
pDeviceContext->SetTarget(pCommandList);
hr = RenderPatternToCommandList(pDeviceContext);
}
pDeviceContext->SetTarget(pOldTarget);
ID2D1ImageBrush *pImageBrush = NULL;
if (SUCCEEDED(hr))
{
hr = pDeviceContext->CreateImageBrush(
pCommandList,
D2D1::ImageBrushProperties(
D2D1::RectF(198, 298, 370, 470),
D2D1_EXTEND_MODE_WRAP,
D2D1_EXTEND_MODE_WRAP,
D2D1_INTERPOLATION_MODE_LINEAR
),
&pImageBrush
);
}
// Fill a rectangle with the image brush.
if (SUCCEEDED(hr))
{
pDeviceContext->FillRectangle(
D2D1::RectF(0, 0, 100, 100), pImageBrush);
}
SafeRelease(&pImageBrush);
SafeRelease(&pCommandList);
SafeRelease(&pOldTarget);
return hr;
}
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 7 用 Windows 8 およびプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
サポートされる最小サーバー | Windows Server 2012 および Windows Server 2008 R2 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
ターゲット プラットフォーム の | ウィンドウズ |
ヘッダー | d2d1_1.h |
DLL | D2d1.dll |
関連項目
ID2D1DeviceContext::CreateCommandList
ID2D1DeviceContext::CreateEffect