Metodo IDWriteFactory::CreateGlyphRunAnalysis (dwrite.h)
Crea un oggetto analisi esecuzione glifo, che incapsula le informazioni utilizzate per eseguire il rendering di un glifo.
Sintassi
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
);
Parametri
[in] glyphRun
Tipo: const DWRITE_GLYPH_RUN*
Struttura che contiene le proprietà dell'esecuzione del glifo (faccia del carattere, avanzamenti e così via).
pixelsPerDip
Tipo: FLOAT
Numero di pixel fisici per DIP (device independent pixel). Ad esempio, se il rendering in una bitmap da 96 DPI, pixelPerDip è 1. Se il rendering in una bitmap da 120 DPI , pixelPerDip è 1,25.
[in, optional] transform
Tipo: const DWRITE_MATRIX*
Trasformazione facoltativa applicata ai glifi e alle relative posizioni. Questa trasformazione viene applicata dopo il ridimensionamento specificato emSize e pixelPerDip.
renderingMode
Tipo: DWRITE_RENDERING_MODE
Valore che specifica la modalità di rendering, che deve essere una delle modalità di rendering raster, ovvero non predefinita e non struttura.
measuringMode
Tipo: DWRITE_MEASURING_MODE
Specifica la modalità di misurazione da utilizzare con glifi.
baselineOriginX
Tipo: FLOAT
Posizione orizzontale (coordinata X) dell'origine di base, in DIP.
baselineOriginY
Tipo: FLOAT
Posizione verticale (coordinata Y) dell'origine di base, in DIP.
[out] glyphRunAnalysis
Tipo: IDWriteGlyphRunAnalysis**
Quando termina, questo metodo contiene un indirizzo di un puntatore all'oggetto di analisi dell'esecuzione del glifo appena creato.
Valore restituito
Tipo: HRESULT
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
L'oggetto analisi esecuzione glifo contiene i risultati dell'analisi dell'esecuzione del glifo, incluse le posizioni di tutti i glifi e riferimenti a tutti i glifi rasterizzati nella cache dei tipi di carattere.
Esempio
Nell'esempio di codice seguente viene illustrato come creare un oggetto di analisi dell'esecuzione del glifo. In questo esempio viene usata un'esecuzione di glifi vuota.
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;
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7, Windows Vista con SP2 e Aggiornamento della piattaforma per Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 R2, Windows Server 2008 con SP2 e Platform Update per Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | dwrite.h |
Libreria | Dwrite.lib |
DLL | Dwrite.dll |