IDWriteGlyphRunAnalysis インターフェイス (dwrite.h)

グリフの実行をレンダリングするために使用される低レベルの情報が含まれます。

継承

IDWriteGlyphRunAnalysis インターフェイスは、IUnknown インターフェイスから継承されます。 IDWriteGlyphRunAnalysis には、次の種類のメンバーもあります。

メソッド

IDWriteGlyphRunAnalysis インターフェイスには、これらのメソッドがあります。

 
IDWriteGlyphRunAnalysis::CreateAlphaTexture

指定した外接する四角形内のグリフに対して、指定した型のアルファ テクスチャを作成します。
IDWriteGlyphRunAnalysis::GetAlphaBlendParams

ClearType ブレンドに必要なアルファ ブレンド プロパティを取得します。
IDWriteGlyphRunAnalysis::GetAlphaTextureBounds

グリフの実行の影響を受ける物理ピクセルの外接する四角形を取得します。

解説

アルファ テクスチャには、2 レベルのアルファ テクスチャまたは ClearType アルファ テクスチャを指定できます。

2 レベルのアルファ テクスチャには 1 ピクセルあたり 1 バイトが含まれているため、2 レベルのテクスチャのバッファーのサイズは、テクスチャ境界の領域 (バイト単位) になります。 CreateAlphaTexture によって作成された 2 レベルのアルファ テクスチャの各バイトは、DWRITE_ALPHA_MAX (つまり 255) またはゼロに設定されます。

ClearType アルファ テクスチャには 1 ピクセルあたり 3 バイトが含まれているため、ClearType アルファ テクスチャのバッファーのサイズは、テクスチャ境界の領域の 3 倍 (バイト単位) です。

次のコード例は、グリフ実行分析オブジェクトを作成する方法を示しています。 この例では、空のグリフの実行が使用されています。

HRESULT CreateGlyphRunAnalysis(IDWriteFontFace *pFontFace, IDWriteGlyphRunAnalysis **ppGlyphRunAnalysis)
{
    HRESULT hr = S_OK;
    IDWriteFactory* pDWriteFactory = NULL;

    // Create the DirectWrite factory.
    hr = DWriteCreateFactory(
            DWRITE_FACTORY_TYPE_SHARED,
            __uuidof(IDWriteFactory),
            reinterpret_cast<IUnknown**>(&pDWriteFactory)
            );

    DWRITE_GLYPH_RUN emptyGlyphRun = { 0 };
    UINT16 glyphIndex = 0;
    
    emptyGlyphRun.fontFace = pFontFace;
    emptyGlyphRun.glyphIndices = &glyphIndex;
    emptyGlyphRun.glyphCount = 0;
   
    emptyGlyphRun.fontEmSize = 12;

    IDWriteGlyphRunAnalysis* pGlyphRunAnalysis = NULL;

    if (SUCCEEDED(hr))
    {
        hr = pDWriteFactory->CreateGlyphRunAnalysis(
            &emptyGlyphRun,
            1.0f, // pixelsPerDip,
            NULL, // transform,
            DWRITE_RENDERING_MODE_CLEARTYPE_GDI_CLASSIC,
            DWRITE_MEASURING_MODE_GDI_CLASSIC,
            0.0f, // baselineOriginX,
            0.0f, // baselineOriginY,
            &pGlyphRunAnalysis);
    }
    
    *ppGlyphRunAnalysis = pGlyphRunAnalysis;

    SafeRelease(&pDWriteFactory);

    return S_OK;
}

要件

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