Win32 アプリケーション コードを移行する開発者向けに、次の表に、Win32 Text API と DirectWrite のおおよその同等の API を示します。
GDI テキスト呼び出し | 形容 | DirectWrite と同等 |
---|---|---|
AddFontMemResourceExの | 埋め込みフォントをシステム フォント テーブルに追加します。 | CreateCustomFontFileReference + CreateCustomFontCollection をする |
AddFontResourceの | システム フォント テーブルにフォント リソースを追加します。 | 同等のものはありません。 addFontResource、GDI フォントのインストール手順の一環としてシステム フォント コレクションに追加されます。 DirectWrite は、システム フォント コレクションを事前に設定し、更新プログラムを自動的に監視するため、インストールは必要ありません。 |
AddFontResourceExをする | システム フォント テーブルにプライベート フォントまたは列挙不可能なフォントを追加します。 | 上記と同じ |
CreateFontの | 論理フォントを作成します。 | アプリケーションでは、論理フォントの代わりに、フォント プロパティのセット (ファミリ名、重み、スタイル、ストレッチ、サイズなど) を指定して、IDWriteTextFormatを作成できます。 フォントの列挙を必要とするアプリのみが、IDWriteFontCollectionを介して IDWriteFont にアクセスします。 |
CreateFontIndirectの | 構造体から論理フォントを作成します。 | 上記と同じ |
CreateFontIndirectExの | 構造体から論理フォントを作成します。 | 上記と同じ |
DrawTextの | 書式設定されたテキストを四角形に描画します。 | IDWriteTextLayout::D raw |
DrawTextExの | 書式設定されたテキストを四角形に描画します。 | IDWriteTextLayout::D raw |
EnumFontFamExProcの | フォントを処理するために EnumFontFamiliesEx使用されるアプリケーション定義のコールバック関数。 | IDWriteFontCollectionインターフェイス、IDWriteFactory::GetSystemFontCollection |
EnumFontFamiliesExの | 特定の特性を持つシステム内のすべてのフォントを列挙します。 | IDWriteFontCollectionインターフェイス、IDWriteFactory::GetSystemFontCollection |
extTextOutの | 文字列を描画します。 | IDWriteTextLayout::D raw または IDWriteRenderBitmapTarget::D rawGlyphRun |
GetAspectRatioFilterExをする | 縦横比フィルターの設定を取得します。 | N/A |
GetCharABCWidthsの | TrueType フォントから連続する文字の幅を取得します。 | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsFloatの | 現在のフォントから連続する文字の幅を取得します。 | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharABCWidthsIの | 連続するグリフ インデックスの幅またはグリフ インデックスの配列を TrueType フォントから取得します。 | IDWriteFontFace::GetDesignGlyphMetrics |
GetCharacterPlacementをする | 文字列に関する情報を取得します。 | IDWriteTextAnalyzer |
GetCharWidth32の | 現在のフォントから連続する文字の幅を取得します。 | IDWriteFontFace::GetDesignGlyphMetrics または IDWriteTextLayout::GetMetrics |
GetCharWidthFloatの | 現在のフォントから連続する文字の小数部の幅を取得します。 | IDWriteFontFace::GetDesignGlyphMetrics または IDWriteTextLayout::GetMetrics |
GetCharWidthIの | 現在のフォントから、連続するグリフ インデックスの幅またはグリフ インデックスの配列を取得します。 | IDWriteFontFace::GetDesignGlyphMetrics または IDWriteTextLayout::GetMetrics |
GetFontDataの | TrueType フォントのメトリック データを取得します。 | IDWriteFontFace::TryGetFontTable |
GetFontLanguageInfoの | 表示コンテキストの選択したフォントに関する情報を返します。 | N/A |
GetFontUnicodeRangesの | フォントでサポートされている Unicode 文字を示します。 | IDWriteFont::HasCharacter のループ |
GetGlyphIndicesの | 文字列をグリフ インデックスの配列に変換します。 | IDWriteFontFace::GetGlyphIndices |
GetGlyphOutlineをする | TrueType フォントの文字のアウトラインまたはビットマップを取得します。 | glyph metrics -- IDWriteFontFace::GetDesignGlyphMetrics, 実際のアウトライン情報 --IDwriteFontFace::GetGlyphRunOutline, グリフ ビットマップが必要な場合は、IDWriteRenderBitmapRenderTarget::D rawGlyphRun |
GetKerningPairs | フォントの文字とカーニングのペアを取得します。 | カーニングは、レイアウトの文字体裁プロパティを介して許可されます (DirectWrite 自体はカーニングを行うので、この情報を返すメソッドはありません)。 |
GetOutlineTextMetricsをする | TrueType フォントのテキスト メトリックを取得します。 | IDWriteFontFace::GetMetrics |
GetRasterizerCapsの | TrueType フォントがインストールされているかどうかを示します。 | (TrueType フォントは、既定で Windows Vista および Windows 7 にインストールされます)。 |
GetTabbedTextExtentをする | タブを含む文字列の幅と高さを計算します。 | IDWriteTextLayout::GetMetrics |
GetTextAlignの | デバイス コンテキストのテキスト配置設定を取得します。 | IDWriteTextFormat::GetTextAlignment |
GetTextCharacterExtraの | デバイス コンテキストの現在の文字間の間隔を取得します。 | N/A |
GetTextColorの | デバイス コンテキストのテキストの色を取得します。 | N/A。 (DirectWrite はレンダリングに依存しないため、色がわかりません。アプリケーションは、それ自体を追跡する必要があります)。 |
GetTextExtentExPointの | スペース内に収まる文字列内の文字数を取得します。 | IDWriteTextLayout::GetMetrics |
GetTextExtentExPointIの | スペース内に収まるグリフ インデックスの数を取得します。 | IDWriteTextLayout::GetMetrics |
GetTextExtentPoint32の | 文字列の幅と高さを計算します。 | IDWriteTextLayout::GetMetrics |
GetTextExtentPointIの | グリフ インデックスの配列の幅と高さを計算します。 | IDWriteTextLayout::GetMetrics |
GetTextFaceをする | デバイス コンテキストで選択されているフォントの名前を取得します。 | IDWriteFont::GetFaceNames (すべての名前を返します) |
GetTextMetricsをする | バッファーにフォントのメトリックを入力します。 | IDWriteFontFace::GetMetrics |
PolyTextOutの | デバイス コンテキストでフォントとテキストの色を使用して、複数の文字列を描画します。 | N/A;複数のレイアウト オブジェクトを作成する |
RemoveFontMemResourceExの | ソースがドキュメントに埋め込まれたフォントをシステム フォント テーブルから削除します。 | 関連付けられたオブジェクトに対する IUnknown::Releaseの |
RemoveFontResourceの | システム フォント テーブルからファイル内のフォントを削除します。 | N/A |
RemoveFontResourceExの | システム フォント テーブルからプライベートフォントまたは列挙不可能フォントを削除します。 | N/A |
SetMapperFlagsの | 論理フォントを物理フォントにマップするために使用するアルゴリズムを変更します。 | N/A |
SetTextAlignの | デバイス コンテキストのテキスト配置フラグを設定します。 | IDWriteTextFormat::SetTextAlignment |
SetTextCharacterExtraの | 文字間の間隔を設定します。 | N/A |
SetTextColorの | デバイス コンテキストのテキストの色を設定します。 | アプリケーションは、Draw 呼び出しのいずれかで色を指定する必要があります。 |
SetTextJustificationの | システムが文字列内の区切り文字に追加する領域の量を指定します。 | N/A。 このリリースでは、理由と文字間隔はサポートされていません。 |
TabbedTextOutをする | 指定した値にタブを展開して、位置に文字列を書き込みます。 | IDWriteTextLayout::D raw |
TextOutの | 場所に文字列を書き込みます | IDWriteTextLayout::D raw |