Método IDWriteTextAnalyzer1::GetJustifiedGlyphs (dwrite_1.h)

Preenche novos glifos para scripts complexos em que a justificativa aumentou os avanços dos glifos, como árabe com kashida.

Sintaxe

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

Parâmetros

fontFace

Tipo: IDWriteFontFace*

Face de fonte usada para modelagem.

Pode ser NULL.

fontEmSize

Tipo: FLOAT

Tamanho da fonte em usada para a execução do glifo.

scriptAnalysis

Tipo: DWRITE_SCRIPT_ANALYSIS

Script do texto do itemizer.

textLength

Tipo: UINT32

Comprimento do texto.

glyphCount

Tipo: UINT32

Número de glifos.

maxGlyphCount

Tipo: UINT32

Número máximo de glifos de saída alocados pelo chamador.

[in, optional] clusterMap

Tipo: const UINT16*

Clustermap produzido a partir da formatação.

[in] glyphIndices

Tipo: const UINT16*

Glifos originais produzidos a partir da formatação.

[in] glyphAdvances

Tipo: const FLOAT*

Avanços de glifo originais produzidos a partir da formatação.

[in] justifiedGlyphAdvances

Tipo: const FLOAT*

Avanços de glifo justificados de IDWriteTextAnalyzer1::JustifyGlyphAdvances.

[in] justifiedGlyphOffsets

Tipo: const DWRITE_GLYPH_OFFSET*

Deslocamentos de glifo justificados de IDWriteTextAnalyzer1::JustifyGlyphAdvances.

[in] glyphProperties

Tipo: const DWRITE_SHAPING_GLYPH_PROPERTIES*

Propriedades de cada glifo, de IDWriteTextAnalyzer::GetGlyphs.

[out] actualGlyphCount

Tipo: UINT32*

A nova contagem de glifos gravada nas matrizes modificadas ou a contagem de glifos necessária se o tamanho não for grande o suficiente.

[out, optional] modifiedClusterMap

Tipo: UINT16*

Clustermap atualizado.

[out] modifiedGlyphIndices

Tipo: UINT16*

Glifos atualizados com novos glifos inseridos quando necessário.

[out] modifiedGlyphAdvances

Tipo: FLOAT*

Avanços de glifo atualizados.

[out] modifiedGlyphOffsets

Tipo: DWRITE_GLYPH_OFFSET*

Deslocamentos de glifo atualizados.

Valor retornado

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Você chama GetJustifiedGlyphs depois que a linha é justificada e ela é por execução.

Você deverá chamar GetJustifiedGlyphs se IDWriteTextAnalyzer1::GetScriptProperties retornar um DWRITE_SCRIPT_PROPERTIES.justificationCharacter não nulo para esse script.

Use GetJustifiedGlyphs principalmente para scripts cursivos como árabe. Se maxGlyphCount não for grande o suficiente, GetJustifiedGlyphs retornará o erro E_NOT_SUFFICIENT_BUFFER e preencherá a variável à qual actualGlyphCount aponta com a contagem de glifos necessária.

Requisitos

   
Cliente mínimo com suporte Windows 8 e Platform Update para Windows 7 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 e Platform Update para Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho dwrite_1.h
Biblioteca Dwrite.lib
DLL Dwrite.dll

Confira também

IDWriteTextAnalyzer1

IDWriteTextAnalyzer1::GetScriptProperties

IDWriteTextAnalyzer1::JustifyGlyphAdvances

IDWriteTextAnalyzer::GetGlyphs