Metodo IDWriteTextAnalyzer1::GetJustifiedGlyphs (dwrite_1.h)

Inserisce nuovi glifi per script complessi in cui la giustificazione ha aumentato i progressi dei glifi, ad esempio l'arabo con kashida.

Sintassi

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

Parametri

fontFace

Tipo: IDWriteFontFace*

Tipo di carattere utilizzato per la forma.

Può essere Null.

fontEmSize

Tipo: FLOAT

Dimensione del carattere em utilizzata per l'esecuzione del glifo.

scriptAnalysis

Tipo: DWRITE_SCRIPT_ANALYSIS

Script del testo dell'elementoizer.

textLength

Tipo: UINT32

Lunghezza del testo.

glyphCount

Tipo: UINT32

Numero di glifi.

maxGlyphCount

Tipo: UINT32

Numero massimo di glifi di output allocati dal chiamante.

[in, optional] clusterMap

Tipo: const UINT16*

Mappa cluster prodotta dalla modellazione.

[in] glyphIndices

Tipo: const UINT16*

Glifi originali prodotti dalla forma.

[in] glyphAdvances

Tipo: const FLOAT*

Glifi originali avanzano dalla forma.

[in] justifiedGlyphAdvances

Tipo: const FLOAT*

Glifi giustificati avanzano da IDWriteTextAnalyzer1::JustifyGlyphAdvances.

[in] justifiedGlyphOffsets

Tipo: const DWRITE_GLYPH_OFFSET*

Offset giustificati del glifo da IDWriteTextAnalyzer1::JustifyGlyphAdvances.

[in] glyphProperties

Tipo: const DWRITE_SHAPING_GLYPH_PROPERTIES*

Proprietà di ogni glifo, da IDWriteTextAnalyzer::GetGlyphs.

[out] actualGlyphCount

Tipo: UINT32*

Il nuovo numero di glifi scritto nelle matrici modificate o il numero di glifi necessari se le dimensioni non sono sufficienti.

[out, optional] modifiedClusterMap

Tipo: UINT16*

Mappa cluster aggiornata.

[out] modifiedGlyphIndices

Tipo: UINT16*

Glifi aggiornati con nuovi glifi inseriti dove necessario.

[out] modifiedGlyphAdvances

Tipo: FLOAT*

Avanzamenti del glifo aggiornati.

[out] modifiedGlyphOffsets

Tipo: DWRITE_GLYPH_OFFSET*

Offset del glifo aggiornati.

Valore restituito

Tipo: HRESULT

Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .

Commenti

Si chiama GetJustifiedGlyphs dopo che la riga è stata giustificata ed è per esecuzione.

È consigliabile chiamare GetJustifiedGlyphs se IDWriteTextAnalyzer1::GetScriptProperties restituisce un DWRITE_SCRIPT_PROPERTIES.justificationCharacter diverso da Null per tale script.

Usare GetJustifiedGlyphs principalmente per gli script curvi come l'arabo. Se maxGlyphCount non è sufficientemente grande, GetJustifiedGlyphs restituisce l'errore E_NOT_SUFFICIENT_BUFFER e riempie la variabile in cui actualGlyphCount punta con il numero di glifi necessario.

Requisiti

   
Client minimo supportato Windows 8 e Platform Update per Windows 7 [app desktop | App UWP]
Server minimo supportato Windows Server 2012 e Aggiornamento della piattaforma per Windows Server 2008 R2 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione dwrite_1.h
Libreria Dwrite.lib
DLL Dwrite.dll

Vedi anche

IDWriteTextAnalyzer1

IDWriteTextAnalyzer1::GetScriptProperties

IDWriteTextAnalyzer1::JustifyGlyphAdvances

IDWriteTextAnalyzer::GetGlyphs