ScriptGetFontLanguageTags 関数 (usp10.h)

指定した項目で使用でき、OpenType 処理用の指定したスクリプト タグでサポートされている言語タグの一覧を取得します。 リストを構成するタグは、指定されたデバイス コンテキストまたはキャッシュ内のフォントから取得されます。

構文

HRESULT ScriptGetFontLanguageTags(
  [in, optional] HDC             hdc,
  [in, out]      SCRIPT_CACHE    *psc,
  [in, optional] SCRIPT_ANALYSIS *psa,
  [in]           OPENTYPE_TAG    tagScript,
  [in]           int             cMaxTags,
  [out]          OPENTYPE_TAG    *pLangsysTags,
  [out]          int             *pcTags
);

パラメーター

[in, optional] hdc

デバイス コンテキストを処理します。 詳細については、「 キャッシュ」を参照してください。

[in, out] psc

スクリプト キャッシュを識別する SCRIPT_CACHE 構造体へのポインター。

[in, optional] psa

ScriptItemizeOpenType の以前の呼び出しから取得したSCRIPT_ANALYSIS構造体へのポインター。 このパラメーターは、適切なフォントとスクリプトのフォント言語タグを取得できるように、シェイプ エンジンを識別します。

または、アプリケーションでこのパラメーターを NULL に設定して、フィルター処理されていない結果を取得することもできます。

[in] tagScript

関連付けられた言語タグの一覧が要求されるスクリプト タグを定義する OPENTYPE_TAG 構造体。

[in] cMaxTags

pLangSysTags で指定された配列の長さ。

[out] pLangsysTags

この関数が入力条件に一致する言語タグを識別 するOPENTYPE_TAG 構造体の配列を取得するバッファーへのポインター。

[out] pcTags

言語タグ配列内の要素の数へのポインター。

戻り値

処理が正常に終了した場合は 0 を返します。 関数は、成功しない場合は 0 以外の HRESULT 値を返します。 アプリケーションでは、 SUCCEEDED マクロと FAILED マクロを使用して戻り値をテストできます。

一致するタグの数が cMaxTags を超えると、関数は E_OUTOFMEMORYで失敗します。 アプリケーションは、より大きなバッファーを使用してもう一度呼び出しを試すことができます。

解説

正式には ULONG 型として宣言されていますが、 OPENTYPE_TAG 構造体には、4 バイトの配列が含まれています。この配列には、スペース、A- Z、または a から z の 4 つの 8 ビット ASCII 値が含まれています。 たとえば、ルーマニア語、ウルドゥー語、ペルシア語の言語タグは、それぞれ "ROM"、"URD"、および "FAR" です。 各タグはスペースで終わることに注意してください。

大事な Windows 8 以降: Windows 7 で実行する機能を維持するために、Uniscribe を使用するモジュールでは、ライブラリ リストで gdi32.lib の前に Usp10.lib を指定する必要があります。
 

要件

   
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2008 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー usp10.h
Library Usp10.lib
[DLL] Usp10.dll
再頒布可能パッケージ Windows XP Usp10.dll バージョン 1.600 以降

関連項目

キャッシュ

OPENTYPE_TAG

SCRIPT_ANALYSIS

SCRIPT_CACHE

ScriptItemizeOpenType

Uniscribe

Uniscribe 関数