IDWriteFontFace::GetGlyphRunOutline-Methode (dwrite.h)

Berechnet die Gliederung einer Ausführung von Glyphen, indem sie an die Gliederungssenkenschnittstelle zurückruft.

Syntax

HRESULT GetGlyphRunOutline(
                 FLOAT                     emSize,
  [in]           UINT16 const              *glyphIndices,
  [in, optional] FLOAT const               *glyphAdvances,
  [in, optional] DWRITE_GLYPH_OFFSET const *glyphOffsets,
                 UINT32                    glyphCount,
                 BOOL                      isSideways,
                 BOOL                      isRightToLeft,
                 IDWriteGeometrySink       *geometrySink
);

Parameter

emSize

Typ: FLOAT

Die logische Größe der Schriftart in DIP-Einheiten. Ein DIP ("geräteunabhängiges Pixel") entspricht 1/96 Zoll.

[in] glyphIndices

Typ: const UINT16*

Ein Array von Glyphenindizes. Die Glyphen sind in logischer Reihenfolge, und die Vorwärtsrichtung hängt vom Parameter isRightToLeft ab. Das Array muss zugeordnet sein und die Anzahl von Elementen enthalten können, die von glyphCount angegeben werden.

[in, optional] glyphAdvances

Typ: const FLOAT*

Ein optionales Array von Glyphenfortschritten in DIPs. Der Vorstoß einer Glyphe ist der Betrag, der nach dem Zeichnen der Glyphe die Position (in Richtung der Basislinie) voranbringen soll. glyphAdvances enthält die Anzahl von Elementen, die durch glyphCount angegeben werden.

[in, optional] glyphOffsets

Typ: const DWRITE_GLYPH_OFFSET*

Ein optionales Array von Glyphenoffsets, die jeweils den Offset entlang der Baseline und den Offset senkrecht zur Basislinie einer Glyphe relativ zur aktuellen Stiftposition angibt. glyphOffsets enthält die Anzahl von Elementen, die durch glyphCount angegeben werden.

glyphCount

Typ: UINT32

Die Anzahl der Glyphen in der Ausführung.

isSideways

Typ: BOOL

Wenn TRUE, wird der Aufsteigende der Glyphe parallel zur Baseline ausgeführt. Wenn FALSE, wird der Glyphenaufstieg senkrecht zur Baseline ausgeführt. Für ein englisches Alphabet in einer vertikalen Baseline wäre beispielsweise isSideways auf FALSE festgelegt.

Ein Client kann eine vertikale Ausführung rendern, indem er isSideways auf TRUE festlegt und die resultierende Geometrie mithilfe einer Transformation um 90 Grad nach rechts dreht. Die Parameter isSideways und isRightToLeft können nicht beide true sein.

isRightToLeft

Typ: BOOL

Die visuelle Reihenfolge der Glyphen. Wenn dieser Parameter FALSE ist, werden die Glyphenvorschüsse von links nach rechts ausgeführt. Wenn TRUE, ist die Vorstoßrichtung von rechts nach links. Standardmäßig ist die Vorwärtsrichtung von links nach rechts.

geometrySink

Typ: IDWriteGeometrySink*

Ein Zeiger auf die Schnittstelle, die zurück aufgerufen wird, um Gliederungszeichnungsvorgänge auszuführen.

Rückgabewert

Typ: HRESULT

Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile dwrite.h
Bibliothek Dwrite.lib
DLL Dwrite.dll

Weitere Informationen

IDWriteFontFace