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

相對於 DIB 左上角的 DIP,基準原點的水準位置。

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 Vista 的 Windows 7、Windows Vista SP2 和平臺更新 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 R2、Windows Server 2008 SP2 和 Platform Update for Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 dwrite.h
程式庫 Dwrite.lib
Dll Dwrite.dll

另請參閱

IDWriteBitmapRenderTarget