次の方法で共有


ID2D1DeviceContext::GetTarget メソッド (d2d1_1.h)

デバイス コンテキストに現在関連付けられているターゲットを取得します。

構文

void GetTarget(
  [out, optional] ID2D1Image **image
);

パラメーター

[out, optional] image

種類: ID2D1Image**

このメソッドから制御が戻るときに、デバイス コンテキストに現在関連付けられているターゲットへのポインターのアドレスが格納されます。

戻り値

なし

解説

ターゲットがデバイス コンテキストに関連付けられていない場合、メソッドが返されるときに ターゲットNULL が含まれます。

現在選択されているターゲットがコマンド リストではなくビットマップである場合、アプリケーションは次のいずれかの方法を使用して作成された初期ビットマップにアクセスできます。

アプリケーションでこれらのビットマップを破棄することはできません。 これらのビットマップはすべて、ビットマップ ターゲットとしてバインド可能です。 ただし、これらすべてのビットマップを ID2D1RenderTarget メソッドのビットマップ ソースとして使用できるわけではありません。

CreateDxgiSurfaceRenderTarget は、DXGI サーフェスがシェーダー リソース ビューとしてバインド可能な場合に、ビットマップ ソースとして使用できるビットマップを作成します。

CreateCompatibleRenderTarget では、ビットマップ ソースとして使用できるビットマップが常に作成されます。

ID2D1RenderTarget::BeginDraw は HDC からそれに関連付けられている元のビットマップにコピーされます。 ID2D1RenderTarget::EndDraw は元のビットマップから HDC にコピーします。

IWICBitmap オブジェクトは、次の状況でロックされます。

  • BeginDraw が呼び出され、現在選択されているターゲット ビットマップは WIC ビットマップです。
  • WIC ビットマップは、BeginDraw が呼び出された後、EndDraw が呼び出される前に、デバイス コンテキストのターゲットとして設定されます。
  • ID2D1Bitmap::Copy* メソッドは、WIC ビットマップをソースまたはコピー先として呼び出されます。
IWICBitmap オブジェクトは、次の状況でロック解除されます。
  • EndDraw が呼び出され、現在選択されているターゲット ビットマップは WIC ビットマップです。
  • WIC ビットマップは、BeginDraw と EndDraw の呼び出しの間のデバイス コンテキストのターゲットとして削除されます。
  • ID2D1Bitmap::Copy* メソッドは、WIC ビットマップをソースまたはコピー先として呼び出されます。
Direct2D では、現在ロックされていないビットマップのみがロックされます。

ID2D1GdiInteropRenderTargetQueryInterface の呼び出しは常に成功します。 ID2D1GdiInteropRenderTarget::GetDC は、現在バインドされているターゲット ビットマップに対応するデバイス コンテキストを返します。 ターゲット ビットマップが GDI_COMPATIBLE フラグを設定して作成されていない場合、GetDC は失敗します。

ID2D1HwndRenderTarget::Resize は、レンダー ターゲットに関連付けられている元のターゲット ビットマップへの未処理の参照がある場合、 DXGI_ERROR_INVALID_CALL を返します。

ターゲットはコマンド リストにできますが、他の種類のイメージにすることはできません。 効果の出力イメージにすることはできません。

要件

要件
サポートされている最小のクライアント Windows 7 のWindows 8とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2 のWindows Server 2012とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー d2d1_1.h
[DLL] D2d1.dll

こちらもご覧ください

ID2D1Bitmap1

ID2D1DeviceContext

ID2D1DeviceContext::CreateBitmap

ID2D1DeviceContext::SetTarget