Método IDWriteFontFace::GetGlyphRunOutline (dwrite.h)

Calcula a estrutura de tópicos de uma execução de glifos chamando de volta para a interface do coletor de estrutura de tópicos.

Sintaxe

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

Parâmetros

emSize

Tipo: FLOAT

O tamanho lógico da fonte em unidades DIP. Um DIP ("pixel independente do dispositivo") é igual a 1/96 polegada.

[in] glyphIndices

Tipo: const UINT16*

Uma matriz de índices de glifo. Os glifos estão em ordem lógica e a direção avançada depende do parâmetro isRightToLeft . A matriz deve ser alocada e ser capaz de conter o número de elementos especificados por glyphCount.

[in, optional] glyphAdvances

Tipo: const FLOAT*

Uma matriz opcional de avanços de glifo em DIPs. O avanço de um glifo é o valor para avançar a posição (na direção da linha de base) depois de desenhar o glifo. glyphAdvances contém o número de elementos especificados por glyphCount.

[in, optional] glyphOffsets

Tipo: const DWRITE_GLYPH_OFFSET*

Uma matriz opcional de deslocamentos de glifo, cada um dos quais especifica o deslocamento ao longo da linha de base e deslocamento perpendicular para a linha de base de um glifo em relação à posição da caneta atual. gliphOffsets contém o número de elementos especificados por glyphCount.

glyphCount

Tipo: UINT32

O número de glifos na execução.

isSideways

Tipo: BOOL

Se TRUE, o ascendente do glifo será executado junto com a linha de base. Se FALSE, o glifo ascendente executará perpendicular para a linha de base. Por exemplo, um alfabeto em inglês em uma linha de base vertical teria isSideways definido comoFALSE.

Um cliente pode renderizar uma execução vertical definindo isSideways como TRUE e girando a geometria resultante 90 graus para a direita usando uma transformação. Os parâmetros isSideways e isRightToLeft não podem ser verdadeiros.

isRightToLeft

Tipo: BOOL

A ordem visual dos glifos. Se esse parâmetro for FALSE, os avanços do glifo serão da esquerda para a direita. Se TRUE, a direção avançada será da direita para a esquerda. Por padrão, a direção avançada é da esquerda para a direita.

geometrySink

Tipo: IDWriteGeometrySink*

Um ponteiro para a interface que é chamada de volta para executar operações de desenho de estrutura de tópicos.

Retornar valor

Tipo: HRESULT

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

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7, Windows Vista com SP2 e Atualização de Plataforma para Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 R2, Windows Server 2008 com SP2 e Platform Update para Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho dwrite.h
Biblioteca Dwrite.lib
DLL Dwrite.dll

Confira também

IDWriteFontFace