Win32 API 日本語リファレンス
ホームGraphics.Direct2D › ID2D1SvgDocument

ID2D1SvgDocument

COM
IID86b88e4d-afa4-4d7b-88e4-68a51c4a0aec継承元ID2D1Resource自前メソッド開始 vtbl4

公式ドキュメント

SVG ドキュメントを表します。

メソッド 11

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 4 HRESULT SetViewportSize(D2D_SIZE_F viewportSize)

初期ビューポートのサイズを設定します。

viewportSizeD2D_SIZE_Finビューポートのサイズ。

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

vtbl 5 D2D_SIZE_F GetViewportSize()

初期ビューポートのサイズを返します。

戻り値

Type: D2D1_SIZE_F

初期ビューポートのサイズを返します。

vtbl 6 HRESULT SetRoot(ID2D1SvgElement* root)

ドキュメントのルート要素を設定します。

rootID2D1SvgElement*inoptionalドキュメントの新しいルート要素。

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

vtbl 7 void GetRoot(ID2D1SvgElement** root)

ドキュメントのルート要素を取得します。

rootID2D1SvgElement**outドキュメントのルート要素を出力します。
vtbl 8 HRESULT FindElementById(LPWSTR id, ID2D1SvgElement** svgElement)

指定された ID を持つ SVG 要素を取得します。

idLPWSTRin取得する要素の ID。
svgElementID2D1SvgElement**out指定された ID に一致する要素。要素が見つからない場合、返される要素は null になります。

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

vtbl 9 HRESULT Serialize(IStream* outputXmlStream, ID2D1SvgElement* subtree)

要素とそのサブツリーを XML にシリアル化します。出力される XML は UTF-8 でエンコードされます。

outputXmlStreamIStream*inSVG XML サブツリーを格納する出力ストリーム。
subtreeID2D1SvgElement*inoptionalサブツリーのルート。null の場合、ドキュメント全体がシリアル化されます。

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

vtbl 10 HRESULT Deserialize(IStream* inputXmlStream, ID2D1SvgElement** subtree)

ストリームからサブツリーをデシリアライズします。ストリームはルート要素を 1 つだけ持つ必要がありますが、そのルート要素は 'svg' 要素である必要はありません。出力される要素は、このドキュメントツリーには挿入されません。

inputXmlStreamIStream*inSVG XML サブツリーを含む入力ストリーム。
subtreeID2D1SvgElement**outサブツリーのルート。

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

vtbl 11 HRESULT CreatePaint(D2D1_SVG_PAINT_TYPE paintType, D2D1_COLOR_F* color, LPWSTR id, ID2D1SvgPaint** paint)
paintTypeD2D1_SVG_PAINT_TYPEin生成する塗りの種別(color/uri等)を指定する列挙値。
colorD2D1_COLOR_F*inoptional塗りの色を表すD2D1_COLOR_F構造体へのポインター。NULL可。
idLPWSTRinoptionaluri参照に用いる要素IDを表すワイド文字列。NULL可。
paintID2D1SvgPaint**out生成されたペイントオブジェクトを受け取る出力ポインター。
vtbl 12 HRESULT CreateStrokeDashArray(D2D1_SVG_LENGTH* dashes, DWORD dashesCount, ID2D1SvgStrokeDashArray** strokeDashArray)

stroke-dasharray プロパティの設定に使用できるダッシュ配列オブジェクトを作成します。

dashesD2D1_SVG_LENGTH*inoptionalダッシュの配列。
dashesCountDWORDindashes 引数の配列のサイズ。
strokeDashArrayID2D1SvgStrokeDashArray**out作成された ID2D1SvgStrokeDashArray

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

vtbl 13 HRESULT CreatePointCollection(D2D_POINT_2F* points, DWORD pointsCount, ID2D1SvgPointCollection** pointCollection)

polygon 要素または polyline 要素に points 属性を設定するために使用できる points オブジェクトを作成します。

pointsD2D_POINT_2F*inoptionalポイントコレクション内のポイント。
pointsCountDWORDinpoints 引数内のポイントの数。
pointCollectionID2D1SvgPointCollection**out作成された ID2D1SvgPointCollection オブジェクト。

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

vtbl 14 HRESULT CreatePathData(FLOAT* segmentData, DWORD segmentDataCount, D2D1_SVG_PATH_COMMAND* commands, DWORD commandsCount, ID2D1SvgPathData** pathData)

'path' 要素に 'd' 属性を設定するために使用できるパスデータオブジェクトを作成します。

segmentDataFLOAT*inoptionalセグメントデータの配列。
segmentDataCountDWORDinsegmentData 内の項目数。
commandsD2D1_SVG_PATH_COMMAND*inoptionalパスコマンドの配列。
commandsCountDWORDincommands 内の項目数。
pathDataID2D1SvgPathData**outこのメソッドが完了すると、作成されたパスデータを指します。

戻り値

Type: HRESULT

このメソッドは、成功または失敗を示す HRESULT コードを返します。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_ID2D1SvgDocument "{86B88E4D-AFA4-4D7B-88E4-68A51C4A0AEC}"
#usecom global ID2D1SvgDocument IID_ID2D1SvgDocument "{}"
#comfunc global ID2D1SvgDocument_SetViewportSize        4 int
#comfunc global ID2D1SvgDocument_GetViewportSize        5
#comfunc global ID2D1SvgDocument_SetRoot                6 sptr
#comfunc global ID2D1SvgDocument_GetRoot                7 sptr
#comfunc global ID2D1SvgDocument_FindElementById        8 wstr,sptr
#comfunc global ID2D1SvgDocument_Serialize              9 sptr,sptr
#comfunc global ID2D1SvgDocument_Deserialize            10 sptr,sptr
#comfunc global ID2D1SvgDocument_CreatePaint            11 int,var,wstr,sptr
#comfunc global ID2D1SvgDocument_CreateStrokeDashArray  12 var,int,sptr
#comfunc global ID2D1SvgDocument_CreatePointCollection  13 var,int,sptr
#comfunc global ID2D1SvgDocument_CreatePathData         14 var,int,var,int,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。