ID2D1RenderTarget::CreateCompatibleRenderTarget (D2D1_SIZE_F,D2D1_SIZE_U,D2D1_PIXEL_FORMAT,ID2D1BitmapRenderTarget**) 方法 (d2d1.h)

建立位圖轉譯目標,以在與目前轉譯目標相容的中繼螢幕外繪圖期間使用。

語法

HRESULT CreateCompatibleRenderTarget(
  D2D1_SIZE_F             desiredSize,
  D2D1_SIZE_U             desiredPixelSize,
  D2D1_PIXEL_FORMAT       desiredFormat,
  ID2D1BitmapRenderTarget **bitmapRenderTarget
);

參數

desiredSize

類型:[in] D2D1_SIZE_F

新轉譯目標所需的大小 (與裝置無關的圖元) ,如果它應該與原始轉譯目標不同。 如需詳細資訊,請參閱一節。

desiredPixelSize

類型:[in] D2D1_SIZE_U

如果新轉譯目標應該與原始轉譯目標不同,則為圖元的新轉譯目標所需的大小。 如需詳細資訊,請參閱<備註>一節。

desiredFormat

類型:[in] D2D1_PIXEL_FORMAT

新轉譯目標的所需圖元格式和 Alpha 模式。 如果圖元格式設定為DXGI_FORMAT_UNKNOWN,新的轉譯目標會使用與原始轉譯目標相同的圖元格式。 如果alpha模式 D2D1_ALPHA_MODE_UNKNOWN,則新轉譯目標的Alpha模式預設為 D2D1_ALPHA_MODE_PREMULTIPLIED。 如需支援圖元格式的資訊,請參閱 支援的圖元格式和 Alpha 模式

bitmapRenderTarget

類型:[out] ID2D1BitmapRenderTarget**

當這個方法傳回時,會包含指向新位圖轉譯目標的指標。 這個參數會以未初始化的狀態傳遞。

傳回值

類型: HRESULT

如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

您可以藉由指定 desiredSizedesiredPixelSize 的值來改變新轉譯目標的圖元大小和 DPI。

  • 如果指定 desiredSizedesiredPixelSize 不是,則會使用父目標 DPI 從所需的大小計算圖元大小。 如果 desiredSize 對應至整數圖元大小,相容轉譯目標的 DPI 與父目標的 DPI 相同。 如果 desiredSize 對應至小數圖元大小,圖元大小會四捨五入為最接近的整數,而相容轉譯目標的 DPI 會稍微高於父轉譯目標的 DPI。 在所有情況下,座標 (desiredSize.width,desiredSize.height) 對應至相容轉譯目標的右下角。
  • 如果指定 desiredPixelSizedesiredSize 不是,則新轉譯目標的 DPI 與原始轉譯目標相同。
  • 如果同時指定 desiredSizedesiredPixelSize ,則會計算新轉譯目標的 DPI,以考慮縮放比例的差異。
  • 如果未指定 desiredSizedesiredPixelSize ,新的轉譯目標大小和 DPI 會符合原始轉譯目標。

這個方法所建立的位圖轉譯目標與 GDI 不相容。

規格需求

需求
最低支援的用戶端 適用於 Windows Vista 的 Windows 7、Windows Vista SP2 和平臺更新 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2、Windows Server 2008 SP2 和 Platform Update for Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 d2d1.h
程式庫 D2d1.lib
Dll D2d1.dll

另請參閱

ID2D1RenderTarget