Método IDWriteBitmapRenderTarget::D rawGlyphRun (dwrite.h)

Desenha uma execução de glifos para um destino de bitmap na posição especificada.

Sintaxe

HRESULT DrawGlyphRun(
                  FLOAT                  baselineOriginX,
                  FLOAT                  baselineOriginY,
                  DWRITE_MEASURING_MODE  measuringMode,
  [in]            DWRITE_GLYPH_RUN const *glyphRun,
                  IDWriteRenderingParams *renderingParams,
                  COLORREF               textColor,
  [out, optional] RECT                   *blackBoxRect
);

Parâmetros

baselineOriginX

Tipo: FLOAT

A posição horizontal da origem da linha de base, em DIPs, em relação ao canto superior esquerdo do DIB.

baselineOriginY

Tipo: FLOAT

A posição vertical da origem da linha de base, em DIPs, em relação ao canto superior esquerdo do DIB.

measuringMode

Tipo: DWRITE_MEASURING_MODE

O método de medição para glifos na execução, usado com as outras propriedades para determinar o modo de renderização.

[in] glyphRun

Tipo: const DWRITE_GLYPH_RUN*

A estrutura que contém as propriedades da execução do glifo.

renderingParams

Tipo: IDWriteRenderingParams*

O objeto que controla o comportamento de renderização.

textColor

Tipo: COLORREF

A cor de primeiro plano do texto.

[out, optional] blackBoxRect

Tipo: RECT*

O retângulo opcional que recebe a caixa delimitadora (em pixels não DIPs) de todos os pixels afetados pelo desenho da execução do glifo. O retângulo da caixa preta pode se estender além das dimensões do bitmap.

Valor retornado

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Você pode usar o IDWriteBitmapRenderTarget::D rawGlyphRun para renderizar em um bitmap de um renderizador de texto personalizado que você implementa. O renderizador de texto personalizado deve chamar esse método de dentro do método de retorno de chamada IDWriteTextRenderer::D rawGlyphRun , conforme mostrado no código a seguir.

STDMETHODIMP GdiTextRenderer::DrawGlyphRun(
    __maybenull void* clientDrawingContext,
    FLOAT baselineOriginX,
    FLOAT baselineOriginY,
    DWRITE_MEASURING_MODE measuringMode,
    __in DWRITE_GLYPH_RUN const* glyphRun,
    __in DWRITE_GLYPH_RUN_DESCRIPTION const* glyphRunDescription,
    IUnknown* clientDrawingEffect
    )
{
    HRESULT hr = S_OK;

    // Pass on the drawing call to the render target to do the real work.
    RECT dirtyRect = {0};

    hr = pRenderTarget_->DrawGlyphRun(
        baselineOriginX,
        baselineOriginY,
        measuringMode,
        glyphRun,
        pRenderingParams_,
        RGB(0,200,255),
        &dirtyRect
        );
    

    return hr;
}

Os parâmetros baselineOriginX, baslineOriginY, measuringMethod e glyphRun são fornecidos (como argumentos) quando o método de retorno de chamada é invocado. RenderingParams, textColor e blackBoxRect não são.

Os parâmetros de renderização padrão podem ser recuperados usando o método IDWriteFactory::CreateMonitorRenderingParams .

Requisitos

   
Cliente mínimo com suporte Windows 7, Windows Vista com SP2 e Atualização de Plataforma para Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 R2, Windows Server 2008 com SP2 e Platform Update para Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho dwrite.h
Biblioteca Dwrite.lib
DLL Dwrite.dll

Confira também

IDWriteBitmapRenderTarget