Win2000: If both WS_EX_LAYERED and WS_EX_TRANSPARENT styles are set,
[wine.git] / include / font.h
blob184db4083c36c48597a32a430140c543b21e6449
1 /*
2 * GDI font definitions
4 * Copyright 1994 Alexandre Julliard
5 */
7 #ifndef __WINE_FONT_H
8 #define __WINE_FONT_H
10 #include "gdi.h"
12 #include "pshpack1.h"
14 /* GDI logical font object */
15 typedef struct
17 GDIOBJHDR header;
18 LOGFONTW logfont;
19 } FONTOBJ;
21 typedef struct {
22 WORD dfVersion;
23 DWORD dfSize;
24 CHAR dfCopyright[60];
25 WORD dfType;
26 WORD dfPoints;
27 WORD dfVertRes;
28 WORD dfHorizRes;
29 WORD dfAscent;
30 WORD dfInternalLeading;
31 WORD dfExternalLeading;
32 BYTE dfItalic;
33 BYTE dfUnderline;
34 BYTE dfStrikeOut;
35 WORD dfWeight;
36 BYTE dfCharSet;
37 WORD dfPixWidth;
38 WORD dfPixHeight;
39 BYTE dfPitchAndFamily;
40 WORD dfAvgWidth;
41 WORD dfMaxWidth;
42 BYTE dfFirstChar;
43 BYTE dfLastChar;
44 BYTE dfDefaultChar;
45 BYTE dfBreakChar;
46 WORD dfWidthBytes;
47 DWORD dfDevice;
48 DWORD dfFace;
49 DWORD dfReserved;
50 CHAR szDeviceName[60]; /* FIXME: length unknown */
51 CHAR szFaceName[60]; /* dito */
52 } FONTDIR16, *LPFONTDIR16;
54 #include "poppack.h"
56 #define FONTCACHE 32 /* dynamic font cache size */
58 extern BOOL FONT_Init( UINT16* pTextCaps );
59 extern INT16 FONT_GetObject16( FONTOBJ * font, INT16 count, LPSTR buffer );
60 extern INT FONT_GetObjectA( FONTOBJ * font, INT count, LPSTR buffer );
61 extern INT FONT_GetObjectW( FONTOBJ * font, INT count, LPSTR buffer );
62 extern void FONT_LogFontATo16( const LOGFONTA* font32, LPLOGFONT16 font16 );
63 extern void FONT_LogFontWTo16( const LOGFONTW* font32, LPLOGFONT16 font16 );
64 extern void FONT_LogFont16ToA( const LOGFONT16* font16, LPLOGFONTA font32 );
65 extern void FONT_LogFont16ToW( const LOGFONT16* font16, LPLOGFONTW font32 );
66 extern void FONT_TextMetricATo16(const TEXTMETRICA *ptm32, LPTEXTMETRIC16 ptm16 );
67 extern void FONT_TextMetricWTo16(const TEXTMETRICW *ptm32, LPTEXTMETRIC16 ptm16 );
68 extern void FONT_TextMetric16ToA(const TEXTMETRIC16 *ptm16, LPTEXTMETRICA ptm32 );
69 extern void FONT_TextMetric16ToW(const TEXTMETRIC16 *ptm16, LPTEXTMETRICW ptm32 );
70 extern void FONT_TextMetricAToW(const TEXTMETRICA *ptm32A, LPTEXTMETRICW ptm32W );
71 extern void FONT_NewTextMetricEx16ToW(const NEWTEXTMETRICEX16*, LPNEWTEXTMETRICEXW);
72 extern void FONT_EnumLogFontEx16ToW(const ENUMLOGFONTEX16*, LPENUMLOGFONTEXW);
73 extern BOOL ENGINE_InitFonts(void);
76 #endif /* __WINE_FONT_H */