GetFontData 関数 (wingdi.h)

GetFontData 関数は、TrueType フォントのフォント メトリック データを取得します。

構文

DWORD GetFontData(
  [in]  HDC   hdc,
  [in]  DWORD dwTable,
  [in]  DWORD dwOffset,
  [out] PVOID pvBuffer,
  [in]  DWORD cjBuffer
);

パラメーター

[in] hdc

デバイス コンテキストへのハンドル。

[in] dwTable

フォント データの取得元となるフォント メトリック テーブルの名前。 このパラメーターは、Microsoft Corporation によって公開されている TrueType フォント ファイルの仕様に記載されているメトリック テーブルの 1 つを識別できます。 このパラメーターが 0 の場合、情報は TrueType フォント ファイルのファイルの先頭から、または TrueType コレクション ファイルで現在選択されているフォントのデータの先頭から取得されます。 TrueType コレクション ファイルのファイルの先頭からデータを取得するには、'ttcf' (0x66637474) を指定します。

[in] dwOffset

フォント メトリック テーブルの先頭から関数が情報の取得を開始する位置までのオフセット。 このパラメーターが 0 の場合、 dwTable パラメーターで指定されたテーブルの先頭から情報が取得されます。 この値がテーブルのサイズ以上の場合は、エラーが発生します。

[out] pvBuffer

フォント情報を受け取るバッファーへのポインター。 このパラメーターが NULL の場合、関数はフォント データに必要なバッファーのサイズを返します。

[in] cjBuffer

取得する情報の長さ (バイト単位)。 このパラメーターが 0 の場合、 GetFontDatadwTable パラメーターで指定されたデータのサイズを返します。

戻り値

関数が成功した場合、戻り値は返されるバイト数です。

関数が失敗した場合、戻り値はGDI_ERROR。

注釈

この関数は、フォント操作アプリケーションによってフォント ファイルから TrueType フォント情報を直接取得するために使用することを目的としています。 フォントの埋め込みの詳細については、「 フォント埋め込みリファレンス」を参照してください

アプリケーションで GetFontData 関数を使用して、TrueType フォントをドキュメントと共に保存できる場合があります。 これを行うには、OUTLINETEXTMETRIC 構造体の otmfsType メンバーを確認して、フォントを埋め込むことができるかどうかを判断します。 otmfsType のビット 1 が設定されている場合、フォントの埋め込みは許可されません。 ビット 1 が明確な場合は、フォントを埋め込むことができます。 ビット 2 が設定されている場合、埋め込みは読み取り専用です。 埋め込みが許可されている場合、アプリケーションは、 dwTabledwOffsetcbData の各パラメーターに 0 を指定して、フォント ファイル全体を取得できます。

アプリケーションがこの関数を使用して TrueType 以外のフォントの情報を取得しようとすると、エラーが発生します。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wingdi.h (Windows.h を含む)
Library Gdi32.lib
[DLL] Gdi32.dll

こちらもご覧ください

フォント関数とテキスト関数

フォントとテキストの概要

GetTextMetrics

OUTLINETEXTMETRIC