You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
55 lines
1.8 KiB
55 lines
1.8 KiB
/************************** Module Header ***********************************
|
|
* raslib.h
|
|
* Include file to provide prototypes and data types for the rasdd
|
|
* private library.
|
|
*
|
|
* Copyright (C) 1992 - 1993 Microsoft Corporation.
|
|
*
|
|
*****************************************************************************/
|
|
|
|
/*
|
|
* The simple way to turn ANSI to UNICODE>
|
|
*/
|
|
|
|
|
|
/*
|
|
* A convenient grouping for passing around information about the
|
|
* Win 3.1 font information.
|
|
*/
|
|
|
|
typedef struct
|
|
{
|
|
BYTE *pBase; /* The base address of data area */
|
|
DRIVERINFO DI; /* DRIVERINFO for this font */
|
|
PFMHEADER PFMH; /* Properly aligned, not resource format */
|
|
PFMEXTENSION PFMExt; /* Extended PFM data, properly aligned! */
|
|
EXTTEXTMETRIC *pETM; /* Extended text metric */
|
|
} FONTDAT;
|
|
|
|
/*
|
|
* Function prototypes for functions that convert Win 3.1 PFM style
|
|
* font info to the IFIMETRICS etc required by NT.
|
|
*/
|
|
|
|
/* Convert PFM style metrics to IFIMETRICS */
|
|
IFIMETRICS *FontInfoToIFIMetric( FONTDAT *, HANDLE, PWSTR, char ** );
|
|
|
|
/* Extract the Command Descriptors for (de)selecting a font */
|
|
CD *GetFontSel( HANDLE, FONTDAT *, int );
|
|
|
|
|
|
/* Convert from non-aligned x86 format Win 3.1 data to aligned versions */
|
|
void ConvFontRes( FONTDAT * );
|
|
|
|
/* Obtain the width vector - proportionally spaced fonts only */
|
|
short *GetWidthVector( HANDLE, FONTDAT * );
|
|
|
|
/*
|
|
* Functions to return the integer value in a WORD or DWORD. Functions
|
|
* do two operations: first is to align the data, second is to
|
|
* adjuest the byte order to the current machine. The input is
|
|
* assumed to be little endian, like the x86.
|
|
*/
|
|
|
|
extern "C" WORD DwAlign2( BYTE * );
|
|
extern "C" DWORD DwAlign4( BYTE * );
|