IDWriteBitmapRenderTarget::D rawGlyphRun 方法 (dwrite.h)

将一系列字形绘制到位于指定位置的位图目标。

语法

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

参数

baselineOriginX

类型: FLOAT

基线原点的水平位置(以 DIP 为单位),相对于 DIB 的左上角。

baselineOriginY

类型: FLOAT

基线原点相对于 DIB 左上角的垂直位置(以 DIP 为单位)。

measuringMode

类型: DWRITE_MEASURING_MODE

运行中字形的测量方法,与其他属性一起使用以确定呈现模式。

[in] glyphRun

类型: const DWRITE_GLYPH_RUN*

包含字形运行属性的结构。

renderingParams

类型: IDWriteRenderingParams*

控制呈现行为的 对象。

textColor

类型: COLORREF

文本的前景色。

[out, optional] blackBoxRect

类型: RECT*

接收边界框的可选矩形 (像素,而不是 DIP) 绘制字形运行影响的所有像素。 黑框矩形可能超出位图的尺寸。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,将返回 HRESULT 错误代码。

备注

可以使用 IDWriteBitmapRenderTarget::D rawGlyphRun 从实现的自定义文本呈现器呈现为位图。 自定义文本呈现器应从 IDWriteTextRenderer::D rawGlyphRun 回调方法中调用此方法,如以下代码所示。

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;
}

调用回调方法时, baselineOriginXbaslineOriginYmeasuringMethodglyphRun 参数 (作为参数提供) 。 renderingParamstextColorblackBoxRect 不是。

可以使用 IDWriteFactory::CreateMonitorRenderingParams 方法检索默认呈现参数。

要求

   
最低受支持的客户端 Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2、Windows Server 2008 SP2 和适用于 Windows Server 2008 的平台更新 [桌面应用 |UWP 应用]
目标平台 Windows
标头 dwrite.h
Library Dwrite.lib
DLL Dwrite.dll

请参阅

IDWriteBitmapRenderTarget