IDWriteFactory::CreateGlyphRunAnalysis-Methode (dwrite.h)
Erstellt ein Glyphenausführungsanalyseobjekt, das Informationen kapselt, die zum Rendern einer Glyphenausführung verwendet werden.
Syntax
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
);
Parameter
[in] glyphRun
Typ: const DWRITE_GLYPH_RUN*
Eine -Struktur, die die Eigenschaften der Glyphenausführung enthält (Schriftart, Fortschritte usw.).
pixelsPerDip
Typ: FLOAT
Anzahl der physischen Pixel pro DIP (geräteunabhängiges Pixel). Wenn sie beispielsweise in einer Bitmap mit 96 DPI gerendert werden, ist pixelsPerDip 1. Beim Rendern in einer Bitmap mit 120 DPI ist pixelsPerDip 1,25.
[in, optional] transform
Typ: const DWRITE_MATRIX*
Optionale Transformation, die auf die Glyphen und deren Positionen angewendet wird. Diese Transformation wird nach der Skalierung angewendet, die emSize und pixelsPerDip angegeben hat.
renderingMode
Ein -Wert, der den Renderingmodus angibt, der einer der Rasterrenderingmodi sein muss (d. a. nicht Standard und nicht Gliederung).
measuringMode
Gibt den Messmodus an, der mit Glyphen verwendet werden soll.
baselineOriginX
Typ: FLOAT
Die horizontale Position (X-Koordinate) des Basisplanursprungs in DIPs.
baselineOriginY
Typ: FLOAT
Vertikale Position (Y-Koordinate) des Baselineursprungs in DIPs.
[out] glyphRunAnalysis
Typ: IDWriteGlyphRunAnalysis**
Wenn diese Methode zurückgibt, enthält die Adresse eines Zeigers auf das neu erstellte Glyphenausführungsanalyseobjekt.
Rückgabewert
Typ: HRESULT
Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Das Glyphenausführungsanalyseobjekt enthält die Ergebnisse der Analyse der Glyphenausführung, einschließlich der Positionen aller Glyphen und Verweise auf alle gerasterten Glyphen im Schriftartencache.
Beispiele
Im folgenden Codebeispiel wird gezeigt, wie ein Glyphenausführungsanalyseobjekt erstellt wird. In diesem Beispiel wird eine leere Glyphenausführung verwendet.
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;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | dwrite.h |
Bibliothek | Dwrite.lib |
DLL | Dwrite.dll |