| 1 | /* $Id: font.h,v 1.1 1999-05-24 20:19:12 ktk Exp $ */
|
|---|
| 2 |
|
|---|
| 3 | /*
|
|---|
| 4 | * GDI font definitions
|
|---|
| 5 | *
|
|---|
| 6 | * Copyright 1994 Alexandre Julliard
|
|---|
| 7 | */
|
|---|
| 8 |
|
|---|
| 9 | #ifndef __WINE_FONT_H
|
|---|
| 10 | #define __WINE_FONT_H
|
|---|
| 11 |
|
|---|
| 12 | #include "gdi.h"
|
|---|
| 13 |
|
|---|
| 14 | #include "pshpack1.h"
|
|---|
| 15 |
|
|---|
| 16 | /* GDI logical font object */
|
|---|
| 17 | typedef struct
|
|---|
| 18 | {
|
|---|
| 19 | GDIOBJHDR header;
|
|---|
| 20 | LOGFONT16 logfont WINE_PACKED;
|
|---|
| 21 | } FONTOBJ;
|
|---|
| 22 |
|
|---|
| 23 | typedef struct {
|
|---|
| 24 | WORD dfVersion;
|
|---|
| 25 | DWORD dfSize;
|
|---|
| 26 | CHAR dfCopyright[60];
|
|---|
| 27 | WORD dfType;
|
|---|
| 28 | WORD dfPoints;
|
|---|
| 29 | WORD dfVertRes;
|
|---|
| 30 | WORD dfHorizRes;
|
|---|
| 31 | WORD dfAscent;
|
|---|
| 32 | WORD dfInternalLeading;
|
|---|
| 33 | WORD dfExternalLeading;
|
|---|
| 34 | BYTE dfItalic;
|
|---|
| 35 | BYTE dfUnderline;
|
|---|
| 36 | BYTE dfStrikeOut;
|
|---|
| 37 | WORD dfWeight;
|
|---|
| 38 | BYTE dfCharSet;
|
|---|
| 39 | WORD dfPixWidth;
|
|---|
| 40 | WORD dfPixHeight;
|
|---|
| 41 | BYTE dfPitchAndFamily;
|
|---|
| 42 | WORD dfAvgWidth;
|
|---|
| 43 | WORD dfMaxWidth;
|
|---|
| 44 | BYTE dfFirstChar;
|
|---|
| 45 | BYTE dfLastChar;
|
|---|
| 46 | BYTE dfDefaultChar;
|
|---|
| 47 | BYTE dfBreakChar;
|
|---|
| 48 | WORD dfWidthBytes;
|
|---|
| 49 | DWORD dfDevice;
|
|---|
| 50 | DWORD dfFace;
|
|---|
| 51 | DWORD dfReserved;
|
|---|
| 52 | CHAR szDeviceName[60]; /* FIXME: length unknown */
|
|---|
| 53 | CHAR szFaceName[60]; /* dito */
|
|---|
| 54 | } FONTDIR16, *LPFONTDIR16;
|
|---|
| 55 |
|
|---|
| 56 | #include "poppack.h"
|
|---|
| 57 |
|
|---|
| 58 | #define FONTCACHE 32 /* dynamic font cache size */
|
|---|
| 59 |
|
|---|
| 60 | extern BOOL FONT_Init( UINT16* pTextCaps );
|
|---|
| 61 | extern INT16 FONT_GetObject16( FONTOBJ * font, INT16 count, LPSTR buffer );
|
|---|
| 62 | extern INT FONT_GetObjectA( FONTOBJ * font, INT count, LPSTR buffer );
|
|---|
| 63 | extern INT FONT_GetObjectW( FONTOBJ * font, INT count, LPSTR buffer );
|
|---|
| 64 | extern void FONT_LogFont32ATo16( const LOGFONTA* font32, LPLOGFONT16 font16 );
|
|---|
| 65 | extern void FONT_LogFont32WTo16( const LOGFONTW* font32, LPLOGFONT16 font16 );
|
|---|
| 66 | extern void FONT_LogFont16To32A( const LPLOGFONT16 font16, LPLOGFONTA font32 );
|
|---|
| 67 | extern void FONT_LogFont16To32W( const LPLOGFONT16 font16, LPLOGFONTW font32 );
|
|---|
| 68 | extern void FONT_TextMetric32Ato16(const LPTEXTMETRICA ptm32, LPTEXTMETRIC16 ptm16 );
|
|---|
| 69 | extern void FONT_TextMetric32Wto16(const LPTEXTMETRICW ptm32, LPTEXTMETRIC16 ptm16 );
|
|---|
| 70 | extern void FONT_TextMetric16to32A(const LPTEXTMETRIC16 ptm16, LPTEXTMETRICA ptm32 );
|
|---|
| 71 | extern void FONT_TextMetric16to32W(const LPTEXTMETRIC16 ptm16, LPTEXTMETRICW ptm32 );
|
|---|
| 72 | extern void FONT_TextMetric32Ato32W(const LPTEXTMETRICA ptm32A, LPTEXTMETRICW ptm32W );
|
|---|
| 73 |
|
|---|
| 74 |
|
|---|
| 75 |
|
|---|
| 76 | #endif /* __WINE_FONT_H */
|
|---|