Freigeben über


IDWriteTextAnalyzer1::GetJustifiedGlyphs-Methode (dwrite_1.h)

Füllt neue Glyphen für komplexe Skripts aus, in denen die Rechtfertigung die Fortschritte von Glyphen, wie Arabisch mit Kashida, erhöhte.

Syntax

HRESULT GetJustifiedGlyphs(
                  IDWriteFontFace                       *fontFace,
                  FLOAT                                 fontEmSize,
                  DWRITE_SCRIPT_ANALYSIS                scriptAnalysis,
                  UINT32                                textLength,
                  UINT32                                glyphCount,
                  UINT32                                maxGlyphCount,
  [in, optional]  UINT16 const                          *clusterMap,
  [in]            UINT16 const                          *glyphIndices,
  [in]            FLOAT const                           *glyphAdvances,
  [in]            FLOAT const                           *justifiedGlyphAdvances,
  [in]            DWRITE_GLYPH_OFFSET const             *justifiedGlyphOffsets,
  [in]            DWRITE_SHAPING_GLYPH_PROPERTIES const *glyphProperties,
  [out]           UINT32                                *actualGlyphCount,
  [out, optional] UINT16                                *modifiedClusterMap,
  [out]           UINT16                                *modifiedGlyphIndices,
  [out]           FLOAT                                 *modifiedGlyphAdvances,
  [out]           DWRITE_GLYPH_OFFSET                   *modifiedGlyphOffsets
);

Parameter

fontFace

Typ: IDWriteFontFace*

Schriftart, die für die Gestaltung verwendet wird.

Kann NULL sein.

fontEmSize

Typ: FLOAT

Schriftgrad, der für die Ausführung der Glyphen verwendet wird.

scriptAnalysis

Typ: DWRITE_SCRIPT_ANALYSIS

Skript des Texts aus dem Elementisierer.

textLength

Typ: UINT32

Länge des Texts.

glyphCount

Typ: UINT32

Anzahl der Glyphen.

maxGlyphCount

Typ: UINT32

Maximale Anzahl von Ausgabeglyphen, die vom Aufrufer zugewiesen werden.

[in, optional] clusterMap

Typ: const UINT16*

Clustermap, die aus der Gestaltung erstellt wurde.

[in] glyphIndices

Typ: const UINT16*

Original-Glyphen aus Formgebung.

[in] glyphAdvances

Typ: const FLOAT*

Ursprüngliche Glyphenvorstöße, die aus der Formgebung hergestellt wurden.

[in] justifiedGlyphAdvances

Typ: const FLOAT*

Berechtigte Glyphenvorstöße von IDWriteTextAnalyzer1::JustifyGlyphAdvances.

[in] justifiedGlyphOffsets

Typ: const DWRITE_GLYPH_OFFSET*

Gerechtfertigte Glyphenoffsets aus IDWriteTextAnalyzer1::JustifyGlyphAdvances.

[in] glyphProperties

Typ: const DWRITE_SHAPING_GLYPH_PROPERTIES*

Eigenschaften jeder Glyphe aus IDWriteTextAnalyzer::GetGlyphen.

[out] actualGlyphCount

Typ: UINT32*

Die neue Glyphenanzahl, die in die geänderten Arrays geschrieben wird, oder die erforderliche Glyphenanzahl, wenn die Größe nicht groß genug ist.

[out, optional] modifiedClusterMap

Typ: UINT16*

Clustermap wurde aktualisiert.

[out] modifiedGlyphIndices

Typ: UINT16*

Bei Bedarf wurden Glyphen mit neuen Glyphen aktualisiert.

[out] modifiedGlyphAdvances

Typ: FLOAT*

Glyphenvorschüsse wurden aktualisiert.

[out] modifiedGlyphOffsets

Typ: DWRITE_GLYPH_OFFSET*

Glyphenoffsets wurden aktualisiert.

Rückgabewert

Typ: HRESULT

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

Hinweise

Sie rufen GetJustifiedGlyphen auf, nachdem die Zeile gerechtfertigt wurde und pro Ausführung erfolgt.

Sie sollten GetJustifiedGlyphen aufrufen, wenn IDWriteTextAnalyzer1::GetScriptProperties einen ungleich null DWRITE_SCRIPT_PROPERTIES.justificationCharacter für dieses Skript zurückgibt.

Verwenden Sie GetJustifiedGlyphen hauptsächlich für kursive Skripts wie Arabisch. Wenn maxGlyphCount nicht groß genug ist, gibt GetJustifiedGlyphs den Fehler E_NOT_SUFFICIENT_BUFFER zurück und füllt die Variable, auf die actualGlyphCount mit der erforderlichen Glyphenanzahl verweist.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 und Plattformupdate für Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 und Plattformupdate für Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile dwrite_1.h
Bibliothek Dwrite.lib
DLL Dwrite.dll

Weitere Informationen

IDWriteTextAnalyzer1

IDWriteTextAnalyzer1::GetScriptProperties

IDWriteTextAnalyzer1::JustifyGlyphAdvances

IDWriteTextAnalyzer::GetGlyphen