ホーム › Graphics.Direct2D › ID2D1CommandSink2
ID2D1CommandSink2
COM公式ドキュメント
このインターフェイスは、既存の ID2D1CommandSink1 インターフェイスとまったく同じすべての機能を実行します。さらに、インク レンダリングおよびグラデーション メッシュ レンダリングへのアクセスも可能にします。
メソッド 3
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 29 HRESULT DrawInk(ID2D1Ink* ink, ID2D1Brush* brush, ID2D1InkStyle* inkStyle)
指定されたブラシとインク スタイルを使用して、指定されたインク オブジェクトをレンダリングします。(ID2D1CommandSink2.DrawInk)
| ink | ID2D1Ink* | in | レンダリングするインク オブジェクト。 |
| brush | ID2D1Brush* | in | インク オブジェクトのレンダリングに使用するブラシ。 |
| inkStyle | ID2D1InkStyle* | inoptional | インク オブジェクトのレンダリング時に使用するインク スタイル。 |
戻り値
このメソッドは値を返しません。
vtbl 30 HRESULT DrawGradientMesh(ID2D1GradientMesh* gradientMesh)
指定されたグラデーション メッシュをターゲットにレンダリングします。(ID2D1CommandSink2.DrawGradientMesh)
| gradientMesh | ID2D1GradientMesh* | in | レンダリングするグラデーション メッシュ。 |
戻り値
このメソッドは値を返しません。
vtbl 31 HRESULT DrawGdiMetafile(ID2D1GdiMetafile* gdiMetafile, D2D_RECT_F* destinationRectangle, D2D_RECT_F* sourceRectangle)
指定されたソース矩形とデスティネーション矩形を使用して、コマンド シンクにメタファイルを描画します。
| gdiMetafile | ID2D1GdiMetafile* | in | 描画するメタファイル。 |
| destinationRectangle | D2D_RECT_F* | inoptional | メタファイルが描画されるターゲット内の矩形。左上隅を基準とします(DIP 単位で定義)。NULL を指定した場合、デスティネーション矩形はターゲットのサイズになります。 |
| sourceRectangle | D2D_RECT_F* | inoptional | 描画されるソース メタファイルの矩形。左上隅を基準とします(DIP 単位で定義)。 NULL を指定した場合、ソース矩形は ID2D1GdiMetafile1::GetSourceBounds によって返される値になります。 |
戻り値
このメソッドは値を返しません。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_ID2D1CommandSink2 "{3BAB440E-417E-47DF-A2E2-BC0BE6A00916}" #usecom global ID2D1CommandSink2 IID_ID2D1CommandSink2 "{}" #comfunc global ID2D1CommandSink2_DrawInk 29 sptr,sptr,sptr #comfunc global ID2D1CommandSink2_DrawGradientMesh 30 sptr #comfunc global ID2D1CommandSink2_DrawGdiMetafile 31 sptr,var,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_ID2D1CommandSink2 "{3BAB440E-417E-47DF-A2E2-BC0BE6A00916}" #usecom global ID2D1CommandSink2 IID_ID2D1CommandSink2 "{}" #comfunc global ID2D1CommandSink2_DrawInk 29 sptr,sptr,sptr #comfunc global ID2D1CommandSink2_DrawGradientMesh 30 sptr #comfunc global ID2D1CommandSink2_DrawGdiMetafile 31 sptr,sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。