Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Cria um objeto de análise de execução de glifo, que encapsula as informações usadas para renderizar uma execução de glifo.
Sintaxe
HRESULT CreateGlyphRunAnalysis(
[in] DWRITE_GLYPH_RUN const *glyphRun,
FLOAT pixelsPerDip,
[in, optional] DWRITE_MATRIX const *transform,
DWRITE_RENDERING_MODE renderingMode,
DWRITE_MEASURING_MODE measuringMode,
FLOAT baselineOriginX,
FLOAT baselineOriginY,
[out] IDWriteGlyphRunAnalysis **glyphRunAnalysis
);
Parâmetros
[in] glyphRun
Tipo: const DWRITE_GLYPH_RUN*
Uma estrutura que contém as propriedades da execução do glifo (face da fonte, avanços e assim por diante).
pixelsPerDip
Tipo: FLOAT
Número de pixels físicos por DIP (pixel independente do dispositivo). Por exemplo, se for renderizado em um bitmap de 96 DPI, pixelsPerDip será 1. Se a renderização for em um bitmap de 120 DPI, pixelsPerDip será 1,25.
[in, optional] transform
Tipo: const DWRITE_MATRIX*
Transformação opcional aplicada aos glifos e suas posições. Essa transformação é aplicada depois que o dimensionamento especifica o emSize e pixelsPerDip.
renderingMode
Tipo: DWRITE_RENDERING_MODE
Um valor que especifica o modo de renderização, que deve ser um dos modos de renderização de varredura (ou seja, não padrão e não estrutura de tópicos).
measuringMode
Tipo: DWRITE_MEASURING_MODE
Especifica o modo de medição a ser usado com glifos.
baselineOriginX
Tipo: FLOAT
A posição horizontal (coordenada X) da origem da linha de base, em DIPs.
baselineOriginY
Tipo: FLOAT
Posição vertical (coordenada Y) da origem da linha de base, em DIPs.
[out] glyphRunAnalysis
Tipo: IDWriteGlyphRunAnalysis**
Quando esse método retorna, contém um endereço de um ponteiro para o objeto de análise de execução de glifo recém-criado.
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.
Comentários
O objeto de análise de execução de glifo contém os resultados da análise da execução do glifo, incluindo as posições de todos os glifos e referências a todos os glifos rasterizados no cache de fontes.
Exemplos
O exemplo de código a seguir mostra como criar um objeto de análise de execução de glifo. Neste exemplo, uma execução de glifo vazia está sendo usada.
HRESULT CreateGlyphRunAnalysis(IDWriteFontFace *pFontFace, IDWriteGlyphRunAnalysis **ppGlyphRunAnalysis)
{
HRESULT hr = S_OK;
IDWriteFactory* pDWriteFactory = NULL;
// Create the DirectWrite factory.
hr = DWriteCreateFactory(
DWRITE_FACTORY_TYPE_SHARED,
__uuidof(IDWriteFactory),
reinterpret_cast<IUnknown**>(&pDWriteFactory)
);
DWRITE_GLYPH_RUN emptyGlyphRun = { 0 };
UINT16 glyphIndex = 0;
emptyGlyphRun.fontFace = pFontFace;
emptyGlyphRun.glyphIndices = &glyphIndex;
emptyGlyphRun.glyphCount = 0;
emptyGlyphRun.fontEmSize = 12;
IDWriteGlyphRunAnalysis* pGlyphRunAnalysis = NULL;
if (SUCCEEDED(hr))
{
hr = pDWriteFactory->CreateGlyphRunAnalysis(
&emptyGlyphRun,
1.0f, // pixelsPerDip,
NULL, // transform,
DWRITE_RENDERING_MODE_CLEARTYPE_GDI_CLASSIC,
DWRITE_MEASURING_MODE_GDI_CLASSIC,
0.0f, // baselineOriginX,
0.0f, // baselineOriginY,
&pGlyphRunAnalysis);
}
*ppGlyphRunAnalysis = pGlyphRunAnalysis;
SafeRelease(&pDWriteFactory);
return S_OK;
}
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 |