ID2D1EffectImpl::P repareForRender 方法 (d2d1effectauthor.h)
準備轉譯程式的效果。
語法
HRESULT PrepareForRender(
D2D1_CHANGE_TYPE changeType
);
參數
changeType
類型: D2D1_CHANGE_TYPE
指出效果應該預期的變更類型。
傳回值
類型: HRESULT
如果方法成功,它會 傳回S_OK。 如果失敗,則會傳回 HRESULT 錯誤碼。
備註
當效果位於繪製的效果圖形內時,轉譯器會呼叫這個方法。
系統會呼叫 方法:
- 如果效果已初始化,但先前尚未繪製。
- 如果自上次繪製呼叫之後已設定效果屬性。
- 如果上次繪製效果之後的內容狀態已變更。
大部分的影響都會延遲建立任何資源或指定拓撲,直到進行此呼叫為止。 他們會儲存其屬性,並在第一次繪製時將它們對應至一組具體的轉譯技術。
範例
效果通常會等到轉譯,再貼齊其目前狀態,並將它套用至它所封裝的任何轉換。
class CMyTransform : public ID2D1DrawTransform
{
public:
// Transform methods omitted.
HRESULT PrepareForRender(FLOAT radius);
};
class CEffectImplementation : public ID2D1EffectImpl
{
public:
void SetRadius(FLOAT radius) { _radius = radius; }
IFACEMETHODIMP PrepareForRender(D2D1_CHANGE_TYPE /*type*/)
{
// Send the radius to the transform and ask it to render.
return _pMyTransform->PrepareForRender(_radius);
}
private:
CMyTransform *_pMyTransform;
FLOAT _radius;
};
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Windows 7 的 Windows 8 和平臺更新 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | 適用於 Windows Server 2008 R2 的 Windows Server 2012 和平臺更新 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | d2d1effectauthor.h |
程式庫 | D2D1.lib |