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

ID2D1SvgElement

COM
IIDac7b67a6-183e-49c1-a823-0ebe40b0db29継承元ID2D1Resource自前メソッド開始 vtbl4

公式ドキュメント

すべての SVG 要素に対応するインターフェースです。

メソッド 30

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

vtbl 4 void GetDocument(ID2D1SvgDocument** document)

この要素を含むドキュメントを取得します。

documentID2D1SvgDocument**outこの要素を含むドキュメントを出力します。要素がツリーから削除されている場合、この引数は null になります。
vtbl 5 HRESULT GetTagName(LPWSTR name, DWORD nameCount)

タグ名を取得します。

nameLPWSTRoutタグ名。
nameCountDWORDinname 引数に格納される値の長さ。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 6 DWORD GetTagNameLength()

タグ名の文字列長を取得します。

戻り値

Type: UINT32

タグ名の文字列長を返します。返される文字列長には null 終端文字分の領域は含まれません。

vtbl 7 BOOL IsTextContent()

この要素がテキストコンテンツを表すかどうかを示すブール値を返します。

戻り値

Type: BOOL

この要素がテキストコンテンツ(例: 'title' 要素や 'desc' 要素の内容)を表す場合は TRUE を返します。テキストコンテンツはタグ名を持ちません。

vtbl 8 void GetParent(ID2D1SvgElement** parent)

親要素を取得します。

parentID2D1SvgElement**out親要素を出力します。
vtbl 9 BOOL HasChildren()

この要素が子を持つかどうかを示すブール値を返します。

戻り値

Type: BOOL

この要素が子を持つ場合は TRUE を返します。

vtbl 10 void GetFirstChild(ID2D1SvgElement** child)

この要素の最初の子を取得します。

childID2D1SvgElement**outこの要素の最初の子を出力します。
vtbl 11 void GetLastChild(ID2D1SvgElement** child)

この要素の最後の子を取得します。

childID2D1SvgElement**outこの要素の最後の子を出力します。
vtbl 12 HRESULT GetPreviousChild(ID2D1SvgElement* referenceChild, ID2D1SvgElement** previousChild)

referenceChild 要素の前の兄弟要素を取得します。

referenceChildID2D1SvgElement*inreferenceChild はこの要素の直接の子である必要があります。
previousChildID2D1SvgElement**outreferenceChild に前の兄弟要素がある場合、出力される previousChild 要素は非 null になります。referenceChild が最初の子である場合、出力は null になります。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 13 HRESULT GetNextChild(ID2D1SvgElement* referenceChild, ID2D1SvgElement** nextChild)

referenceChild 要素の次の兄弟要素を取得します。

referenceChildID2D1SvgElement*inreferenceChild はこの要素の直接の子である必要があります。
nextChildID2D1SvgElement**outreferenceChild に次の兄弟要素がある場合、出力される nextChild 要素は非 null になります。referenceChild が最後の子である場合、出力は null になります。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 14 HRESULT InsertChildBefore(ID2D1SvgElement* newChild, ID2D1SvgElement* referenceChild)

newChild を、referenceChild 要素の前に、この要素の子として挿入します。

newChildID2D1SvgElement*in挿入する要素。
referenceChildID2D1SvgElement*inoptional子を挿入する位置の直前となる要素。 referenceChild が null の場合、newChild は最後の子として配置されます。 referenceChild が非 null の場合、それはこの要素の直接の子である必要があります。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。この要素が newChild の型の子を受け入れられない 場合はエラーを返します。newChild がこの要素の祖先である場合はエラーを 返します。

vtbl 15 HRESULT AppendChild(ID2D1SvgElement* newChild)

子のリストに要素を追加します。

newChildID2D1SvgElement*in追加する要素。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。 この要素が newChild の型の子を受け入れられない場合はエラーを返します。 newChild がこの要素の祖先である場合はエラーを返します。

vtbl 16 HRESULT ReplaceChild(ID2D1SvgElement* newChild, ID2D1SvgElement* oldChild)

oldChild 要素を newChild で置き換えます。

newChildID2D1SvgElement*in挿入する要素。
oldChildID2D1SvgElement*in置き換えられる子要素。oldChild 要素はこの要素の直接の子である必要があります。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。この要素が newChild の型の子を受け入れられない 場合はエラーを返します。newChild がこの要素の祖先である場合はエラーを 返します。

vtbl 17 HRESULT RemoveChild(ID2D1SvgElement* oldChild)

oldChild をツリーから削除します。oldChild の子は oldChild の子のまま残ります。

oldChildID2D1SvgElement*in削除される子要素。oldChild 要素はこの要素の直接の子である必要があります。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 18 HRESULT CreateChild(LPWSTR tagName, ID2D1SvgElement** newChild)

タグ名から要素を作成します。作成された要素は子のリストに追加されます。

tagNameLPWSTRin新しい子のタグ名。空文字列はテキストコンテンツ要素として解釈されます。
newChildID2D1SvgElement**out新しい子要素。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。 この要素が指定された型の子を受け入れられない場合はエラーを返します。

vtbl 19 BOOL IsAttributeSpecified(LPWSTR name, BOOL* inherited)

属性がこの要素に明示的に設定されているかどうかを示すブール値を返します。

nameLPWSTRin属性の名前。
inheritedBOOL*outoptional属性が inherit 値に設定されているかどうかを出力します。

戻り値

Type: BOOL

属性がこの要素に明示的に設定されている場合、またはインラインスタイル内に存在する場合は TRUE を返します。属性がこの要素で有効な 属性でない場合は FALSE を返します。

vtbl 20 DWORD GetSpecifiedAttributeCount()

この要素に指定されている属性の数を返します。

戻り値

Type: UINT32

この要素に指定されている属性の数を返します。

vtbl 21 HRESULT GetSpecifiedAttributeName(DWORD index, LPWSTR name, DWORD nameCount, BOOL* inherited)

指定されたインデックスにある属性の名前を取得します。

indexDWORDin属性のインデックス。
nameLPWSTRout属性の名前を出力します。
nameCountDWORDinname 引数に返される文字列の長さ。
inheritedBOOL*outoptional属性が inherit 値に設定されているかどうかを出力します。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 22 HRESULT GetSpecifiedAttributeNameLength(DWORD index, DWORD* nameLength, BOOL* inherited)

指定されたインデックスにある指定属性の名前の文字列長を取得します。

indexDWORDin属性のインデックス。
nameLengthDWORD*out指定属性の名前の文字列長を出力します。
inheritedBOOL*outoptional属性が inherit 値に設定されているかどうかを示します。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 23 HRESULT RemoveAttribute(LPWSTR name)

この要素から属性を削除します。

nameLPWSTRin削除する属性の名前。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。属性名がこの要素で有効でない 場合はエラーを返します。

vtbl 24 HRESULT SetTextValue(LPWSTR name, DWORD nameCount)

テキストコンテンツ要素の値を設定します。

nameLPWSTRinテキストコンテンツ要素の新しい値。
nameCountDWORDin

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 25 HRESULT GetTextValue(LPWSTR name, DWORD nameCount)

テキストコンテンツ要素の値を取得します。

nameLPWSTRoutテキストコンテンツ要素の値。
nameCountDWORDinname 引数に格納される値の長さ。

戻り値

Type: HRESULT

このメソッドは HRESULT の成功コードまたはエラーコードを返します。

vtbl 26 DWORD GetTextValueLength()

テキストコンテンツの値の長さを取得します。

戻り値

Type: UINT32

テキストコンテンツの値の長さを返します。返される文字列長には null 終端文字分の領域は含まれません。

vtbl 27 HRESULT SetAttributeValue(LPWSTR name, ID2D1SvgAttribute* value)
nameLPWSTRin設定する属性名を表すワイド文字列。
valueID2D1SvgAttribute*in属性に設定するオブジェクト型属性のインターフェイスポインター。
vtbl 28 HRESULT SetAttributeValue(LPWSTR name, D2D1_SVG_ATTRIBUTE_POD_TYPE type, void* value, DWORD valueSizeInBytes)
nameLPWSTRin設定する属性名を表すワイド文字列。
typeD2D1_SVG_ATTRIBUTE_POD_TYPEin属性値の型を示す列挙値(POD型または文字列型の指定)。
valuevoid*in属性に設定するオブジェクト型属性のインターフェイスポインター。
valueSizeInBytesDWORDinPOD型値のサイズをバイト単位で指定する。
vtbl 29 HRESULT SetAttributeValue(LPWSTR name, D2D1_SVG_ATTRIBUTE_STRING_TYPE type, LPWSTR value)
nameLPWSTRin設定する属性名を表すワイド文字列。
typeD2D1_SVG_ATTRIBUTE_STRING_TYPEin属性値の型を示す列挙値(POD型または文字列型の指定)。
valueLPWSTRin属性に設定するオブジェクト型属性のインターフェイスポインター。
vtbl 30 HRESULT GetAttributeValue(LPWSTR name, GUID* riid, void** value)
nameLPWSTRin取得する属性名を表すワイド文字列。
riidGUID*in取得するインターフェイスを識別するGUIDへのポインター。
valuevoid**out取得した属性値またはインターフェイスを受け取る出力ポインター。
vtbl 31 HRESULT GetAttributeValue(LPWSTR name, D2D1_SVG_ATTRIBUTE_POD_TYPE type, void* value, DWORD valueSizeInBytes)
nameLPWSTRin取得する属性名を表すワイド文字列。
typeD2D1_SVG_ATTRIBUTE_POD_TYPEin取得する属性値の型を示す列挙値(POD型または文字列型)。
valuevoid*out取得した属性値またはインターフェイスを受け取る出力ポインター。
valueSizeInBytesDWORDinPOD型値を受け取るバッファのサイズをバイト単位で指定する。
vtbl 32 HRESULT GetAttributeValue(LPWSTR name, D2D1_SVG_ATTRIBUTE_STRING_TYPE type, LPWSTR value, DWORD valueCount)
nameLPWSTRin取得する属性名を表すワイド文字列。
typeD2D1_SVG_ATTRIBUTE_STRING_TYPEin取得する属性値の型を示す列挙値(POD型または文字列型)。
valueLPWSTRout取得した属性値またはインターフェイスを受け取る出力ポインター。
valueCountDWORDin文字列型値を受け取るバッファの容量を文字数で指定する。
vtbl 33 HRESULT GetAttributeValueLength(LPWSTR name, D2D1_SVG_ATTRIBUTE_STRING_TYPE type, DWORD* valueLength)

この要素の属性の文字列長を取得します。

nameLPWSTRin属性の名前。
typeD2D1_SVG_ATTRIBUTE_STRING_TYPEin属性の文字列型。
valueLengthDWORD*out属性の長さ。返される文字列長には null 終端文字分の領域は含まれません。

戻り値

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_ID2D1SvgElement "{AC7B67A6-183E-49C1-A823-0EBE40B0DB29}"
#usecom global ID2D1SvgElement IID_ID2D1SvgElement "{}"
#comfunc global ID2D1SvgElement_GetDocument                      4 sptr
#comfunc global ID2D1SvgElement_GetTagName                       5 var,int
#comfunc global ID2D1SvgElement_GetTagNameLength                 6
#comfunc global ID2D1SvgElement_IsTextContent                    7
#comfunc global ID2D1SvgElement_GetParent                        8 sptr
#comfunc global ID2D1SvgElement_HasChildren                      9
#comfunc global ID2D1SvgElement_GetFirstChild                    10 sptr
#comfunc global ID2D1SvgElement_GetLastChild                     11 sptr
#comfunc global ID2D1SvgElement_GetPreviousChild                 12 sptr,sptr
#comfunc global ID2D1SvgElement_GetNextChild                     13 sptr,sptr
#comfunc global ID2D1SvgElement_InsertChildBefore                14 sptr,sptr
#comfunc global ID2D1SvgElement_AppendChild                      15 sptr
#comfunc global ID2D1SvgElement_ReplaceChild                     16 sptr,sptr
#comfunc global ID2D1SvgElement_RemoveChild                      17 sptr
#comfunc global ID2D1SvgElement_CreateChild                      18 wstr,sptr
#comfunc global ID2D1SvgElement_IsAttributeSpecified             19 wstr,var
#comfunc global ID2D1SvgElement_GetSpecifiedAttributeCount       20
#comfunc global ID2D1SvgElement_GetSpecifiedAttributeName        21 int,var,int,var
#comfunc global ID2D1SvgElement_GetSpecifiedAttributeNameLength  22 int,var,var
#comfunc global ID2D1SvgElement_RemoveAttribute                  23 wstr
#comfunc global ID2D1SvgElement_SetTextValue                     24 wstr,int
#comfunc global ID2D1SvgElement_GetTextValue                     25 var,int
#comfunc global ID2D1SvgElement_GetTextValueLength               26
#comfunc global ID2D1SvgElement_SetAttributeValue                27 wstr,sptr
#comfunc global ID2D1SvgElement_SetAttributeValue                28 wstr,int,sptr,int
#comfunc global ID2D1SvgElement_SetAttributeValue                29 wstr,int,wstr
#comfunc global ID2D1SvgElement_GetAttributeValue                30 wstr,var,sptr
#comfunc global ID2D1SvgElement_GetAttributeValue                31 wstr,int,sptr,int
#comfunc global ID2D1SvgElement_GetAttributeValue                32 wstr,int,var,int
#comfunc global ID2D1SvgElement_GetAttributeValueLength          33 wstr,int,var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。