共用方式為


IDWriteFactory2::TranslateColorGlyphRun 方法 (dwrite_2.h)

這個方法會在圖像執行上呼叫,以將它轉譯成多個色彩圖像執行。

語法

HRESULT TranslateColorGlyphRun(
                 FLOAT                              baselineOriginX,
                 FLOAT                              baselineOriginY,
  [in]           DWRITE_GLYPH_RUN const             *glyphRun,
  [in, optional] DWRITE_GLYPH_RUN_DESCRIPTION const *glyphRunDescription,
                 DWRITE_MEASURING_MODE              measuringMode,
  [in, optional] DWRITE_MATRIX const                *worldToDeviceTransform,
                 UINT32                             colorPaletteIndex,
  [out]          IDWriteColorGlyphRunEnumerator     **colorLayers
);

參數

baselineOriginX

類型: FLOAT

原始圖像執行的水準基準原點。

baselineOriginY

類型: FLOAT

原始圖像執行的垂直基準原點。

[in] glyphRun

類型:const DWRITE_GLYPH_RUN*

原始圖像執行,其中包含單色圖像識別碼。

[in, optional] glyphRunDescription

類型:const DWRITE_GLYPH_RUN_DESCRIPTION*

選擇性字元執行描述。

measuringMode

類型: DWRITE_MEASURING_MODE

如果執行包含色彩圖像,則用來計算圖像位置的測量模式。

[in, optional] worldToDeviceTransform

類型:const DWRITE_MATRIX*

世界轉換乘以任何 DPI 縮放比例。 如果執行包含色彩圖像,而且測量模式未 DWRITE_MEASURING_MODE_NATURAL,則需要此動作才能計算圖像位置。 如果此參數為 Null,則會假設身分識別轉換。

colorPaletteIndex

類型: UINT32

要使用的調色盤以零起始的索引。 有效的索引小於字型中的調色盤數目,如 IDWriteFontFace2::GetColorPaletteCount所傳回。

[out] colorLayers

類型: IDWriteColorGlyphRunEnumerator**

如果原始圖像執行包含色彩字元,此參數會收到 IDWriteColorGlyphRunEnumerator 介面的指標。 用戶端會使用傳回的介面來取得圖像執行和相關聯色彩的相關資訊,以轉譯,而不是原始圖像執行。 如果原始圖像執行不包含色彩圖像,則此方法會 傳回DWRITE_E_NOCOLOR ,且輸出指標為 Null

傳回值

類型: HRESULT

如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

如果程式碼使用不含色彩資訊的字元執行呼叫這個方法,此方法會傳回 DWRITE_E_NOCOLOR ,讓應用程式知道它只能繪製原始圖像執行。 如果字元回合包含色彩資訊,函式會傳回可列舉的物件,以公開執行和相關聯的色彩。 然後,應用程式會呼叫 DrawGlyphRun ,其中每個傳回的字元都會執行和前景色彩。

規格需求

   
最低支援的用戶端 Windows 8.1 [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2012 R2 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 dwrite_2.h
程式庫 Dwrite.lib
Dll Dwrite.dll

另請參閱

IDWriteFactory2