Share via


IDWriteFontFace::TryGetFontTable メソッド (dwrite.h)

指定した OpenType フォント テーブルが存在する場合は検索し、そのテーブルへのポインターを返します。 この関数は、フォント ファイル ローダーによって実装された IDWriteFontFileStream インターフェイスを介して、基になるフォント データにアクセスします。

構文

HRESULT TryGetFontTable(
  [in]  UINT32     openTypeTableTag,
  [out] const void **tableData,
  [out] UINT32     *tableSize,
  [out] void       **tableContext,
  [out] BOOL       *exists
);

パラメーター

[in] openTypeTableTag

種類: UINT32

検索する OpenType フォント テーブルの 4 文字のタグ。 DWRITE_MAKE_OPENTYPE_TAG マクロを使用して UINT32 として作成します。 GDI とは異なり、フォント全体にアクセスするための特殊な TTCF タグと null タグはサポートされていません。

[out] tableData

型: const void**

このメソッドが戻るとき、 には、メモリ内のテーブルのベースへのポインターのアドレスが格納されます。 ポインターは、フォント テーブルの取得に使用されるフォント面がまだ存在する限り有効です。(実際に同じ物理フォントを参照している場合でも、他のフォント面ではありません)。 このパラメーターは初期化せずに渡されます。

[out] tableSize

型: UINT32*

このメソッドが戻るとき、 には、フォント テーブルのサイズ (バイト単位) へのポインターが含まれます。

[out] tableContext

型: void**

このメソッドが返されると、不透明なコンテキストへのポインターのアドレス。 ReleaseFontTable を呼び出して解放する必要があります。 コンテキストは実際には、アプリケーションまたは DWrite 自体によって実装される可能性がある下位レベルの IDWriteFontFileStream から取得されます。 NULLtableContext が返される可能性があります。特に、実装がファイル全体に対して直接メモリ マッピングを実行する場合です。 ただし、常に後でリリースし、関数の成功のテストとして使用しないでください。 同じテーブルに対して複数回クエリを実行できますが、返されるコンテキストはそれぞれ異なる場合があるため、各コンテキストを個別に解放する必要があります。

[out] exists

種類: BOOL*

このメソッドが返されると、フォント テーブルが存在する場合は TRUE 。それ以外の場合は FALSE

戻り値

種類: HRESULT

このメソッドは、成功すると S_OK を返します。 そうでない場合は、HRESULT エラー コードを返します。

注釈

同じタグのコンテキストは呼び出しごとに異なる場合があるため、それぞれを個別に保持して解放する必要があります。

要件

要件
サポートされている最小のクライアント Windows 7、Windows Vista SP2 および Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー dwrite.h
Library Dwrite.lib
[DLL] Dwrite.dll

こちらもご覧ください

IDWriteFontFace