ホーム › Graphics.DirectWrite › IDWriteFactory1
IDWriteFactory1
COM公式ドキュメント
すべての DirectWrite オブジェクトのルートとなるファクトリインターフェイスです。(IDWriteFactory1)
メソッド 2
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 24 HRESULT GetEudcFontCollection(IDWriteFontCollection** fontCollection, BOOL checkForUpdates)
EUDC(end-user defined characters: ユーザー定義文字)フォントの集合を表すフォントコレクションを取得します。
| fontCollection | IDWriteFontCollection** | out | 格納先となるフォントコレクション。 |
| checkForUpdates | BOOL | in | 更新を確認するかどうか。 |
戻り値
Type: HRESULT
このメソッドが成功した場合は S_OK を返します。それ以外の場合は HRESULT エラーコードを返します。
解説(Remarks)
システムに EUDC が設定されていない場合、返されるコレクションは空になる点に注意してください。つまり、成功は返しますが GetFontFamilyCount は 0 になります。
vtbl 25 HRESULT CreateCustomRenderingParams(FLOAT gamma, FLOAT enhancedContrast, FLOAT enhancedContrastGrayscale, FLOAT clearTypeLevel, DWRITE_PIXEL_GEOMETRY pixelGeometry, DWRITE_RENDERING_MODE renderingMode, IDWriteRenderingParams1** renderingParams)
指定したプロパティを持つレンダリングパラメーターオブジェクトを作成します。(IDWriteFactory1.CreateCustomRenderingParams)
| gamma | FLOAT | in | 新しいレンダリングパラメーターオブジェクトに設定するガンマレベル。 |
| enhancedContrast | FLOAT | in | 新しいレンダリングパラメーターオブジェクトに設定する拡張コントラストレベル。 |
| enhancedContrastGrayscale | FLOAT | in | グレースケールアンチエイリアシングで使用するコントラスト強調の量。0 以上の値。 |
| clearTypeLevel | FLOAT | in | 新しいレンダリングパラメーターオブジェクトに設定する ClearType レベル。 |
| pixelGeometry | DWRITE_PIXEL_GEOMETRY | in | テキストのレンダリングを行う際に想定される、デバイスピクセルの内部構造(すなわち、赤・緑・青の色要素の物理的な配置)を表します。 |
| renderingMode | DWRITE_RENDERING_MODE | in | グリフをレンダリングする方法(たとえば ClearType natural quality)を表す値。 |
| renderingParams | IDWriteRenderingParams1** | out | このメソッドが返るとき、新しく作成されたレンダリングパラメーターオブジェクトへのポインターのアドレスが格納されます。 |
戻り値
Type: HRESULT
標準的な HRESULT エラーコード。
出典・ライセンス: 上記「公式ドキュメント」の内容は 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_IDWriteFactory1 "{30572F99-DAC6-41DB-A16E-0486307E606A}"
#usecom global IDWriteFactory1 IID_IDWriteFactory1 "{}"
#comfunc global IDWriteFactory1_GetEudcFontCollection 24 sptr,int
#comfunc global IDWriteFactory1_CreateCustomRenderingParams 25 float,float,float,float,int,int,sptr
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。