2 #ifndef __WIN32K_TEXT_H
3 #define __WIN32K_TEXT_H
5 /* GDI logical font object */
10 BOOLEAN Initialized
; /* Don't reinitialize for each DC */
13 /* Internal interface */
15 #define TEXTOBJ_AllocText() \
16 ((HFONT) GDIOBJ_AllocObj (GDI_OBJECT_TYPE_FONT))
17 #define TEXTOBJ_FreeText(hBMObj) GDIOBJ_FreeObj((HGDIOBJ) hBMObj, GDI_OBJECT_TYPE_FONT)
18 #define TEXTOBJ_LockText(hBMObj) ((PTEXTOBJ) GDIOBJ_LockObj ((HGDIOBJ) hBMObj, GDI_OBJECT_TYPE_FONT))
19 #define TEXTOBJ_UnlockText(pBMObj) GDIOBJ_UnlockObjByPtr (pBMObj)
21 NTSTATUS FASTCALL
TextIntRealizeFont(HFONT FontHandle
);
22 NTSTATUS FASTCALL
TextIntCreateFontIndirect(CONST LPLOGFONTW lf
, HFONT
*NewFont
);
26 NtGdiAddFontResource(PUNICODE_STRING Filename
,
31 NtGdiCreateFont(int Height
,
40 DWORD OutputPrecision
,
48 NtGdiCreateFontIndirect(CONST LPLOGFONTW lf
);
52 NtGdiCreateScalableFontResource(DWORD Hidden
,
59 NtGdiEnumFonts(HDC hDC
,
61 FONTENUMPROCW FontFunc
,
66 NtGdiExtTextOut(HDC hdc
,
77 NtGdiGetAspectRatioFilterEx(HDC hDC
,
82 NtGdiGetCharABCWidths(HDC hDC
,
89 NtGdiGetCharABCWidthsFloat(HDC hDC
,
96 NtGdiGetCharacterPlacement(HDC hDC
,
100 LPGCP_RESULTSW Results
,
105 NtGdiGetCharWidth32(HDC hDC
,
112 NtGdiGetCharWidthFloat(HDC hDC
,
119 NtGdiGetFontLanguageInfo(HDC hDC
);
123 NtGdiGetGlyphOutline(HDC hDC
,
133 NtGdiGetKerningPairs(HDC hDC
,
135 LPKERNINGPAIR krnpair
);
139 NtGdiGetOutlineTextMetrics(HDC hDC
,
141 LPOUTLINETEXTMETRICW otm
);
145 NtGdiGetRasterizerCaps(LPRASTERIZER_STATUS rs
,
150 NtGdiGetTextCharset(HDC hDC
);
154 NtGdiGetTextCharsetInfo(HDC hDC
,
160 NtGdiGetTextExtentExPoint(HDC hDC
,
170 NtGdiGetTextExtentPoint(HDC hDC
,
177 NtGdiGetTextExtentPoint32(HDC hDC
,
184 NtGdiGetTextFace(HDC hDC
,
190 NtGdiGetTextMetrics(HDC hDC
,
195 NtGdiPolyTextOut(HDC hDC
,
196 CONST LPPOLYTEXTW txt
,
201 NtGdiRemoveFontResource(LPCWSTR FileName
);
205 NtGdiSetMapperFlags(HDC hDC
,
210 NtGdiSetTextAlign(HDC hDC
,
215 NtGdiSetTextColor(HDC hDC
,
220 NtGdiSetTextJustification(HDC hDC
,
226 NtGdiTextOut(HDC hDC
,