ID2D1Factory1

<summary> Creates Direct2D resources. </summary>

Members

Functions

CreateDevice
HRESULT CreateDevice(IDXGIDevice dxgiDevice, ID2D1Device* d2dDevice)

<summary> This creates a new Direct2D device from the given IDXGIDevice. </summary>

CreateDrawingStateBlock
HRESULT CreateDrawingStateBlock(const(D2D1_DRAWING_STATE_DESCRIPTION1)* drawingStateDescription, IDWriteRenderingParams textRenderingParams, ID2D1DrawingStateBlock1* drawingStateBlock)

<summary> Creates a new drawing state block, this can be used in subsequent SaveDrawingState and RestoreDrawingState operations on the render target. </summary>

CreateGdiMetafile
HRESULT CreateGdiMetafile(IStream metafileStream, ID2D1GdiMetafile* metafile)

<summary> Creates a new GDI metafile. </summary>

CreatePathGeometry
HRESULT CreatePathGeometry(ID2D1PathGeometry1* pathGeometry)

<summary> Creates a path geometry with new operational methods. </summary>

CreateStrokeStyle
HRESULT CreateStrokeStyle(const(D2D1_STROKE_STYLE_PROPERTIES1)* strokeStyleProperties, const(FLOAT)* dashes, UINT32 dashesCount, ID2D1StrokeStyle1* strokeStyle)

<summary> This creates a stroke style with the ability to preserve stroke width in various ways. </summary>

GetEffectProperties
HRESULT GetEffectProperties(REFCLSID effectId, ID2D1Properties* properties)

<summary> This retrieves the effect properties for the given effect, all of the effect properties will be set to a default value since an effect is not instantiated to implement the returned property interface. </summary>

GetRegisteredEffects
HRESULT GetRegisteredEffects(CLSID* effects, UINT32 effectsCount, UINT32* effectsReturned, UINT32* effectsRegistered)

<summary> This returns all of the registered effects in the process, including any built-in effects. </summary> <param name="effectsReturned">The number of effects returned into the passed in effects array.</param> <param name="effectsRegistered">The number of effects currently registered in the system.</param>

RegisterEffectFromStream
HRESULT RegisterEffectFromStream(REFCLSID classId, IStream propertyXml, const(D2D1_PROPERTY_BINDING)* bindings, UINT32 bindingsCount, const PD2D1_EFFECT_FACTORY effectFactory)

<summary> This globally registers the given effect. The effect can later be instantiated by using the registered class id. The effect registration is reference counted. </summary>

RegisterEffectFromString
HRESULT RegisterEffectFromString(REFCLSID classId, PCWSTR propertyXml, const(D2D1_PROPERTY_BINDING)* bindings, UINT32 bindingsCount, const PD2D1_EFFECT_FACTORY effectFactory)

<summary> This globally registers the given effect. The effect can later be instantiated by using the registered class id. The effect registration is reference counted. </summary>

UnregisterEffect
HRESULT UnregisterEffect(REFCLSID classId)

<summary> This unregisters the given effect by its class id, you need to call UnregisterEffect for every call to ID2D1Factory1::RegisterEffectFromStream and ID2D1Factory1::RegisterEffectFromString to completely unregister it. </summary>

Meta