2025-04-27 07:49:33 -04:00

56 lines
1.7 KiB
C

#define NUM_POINTS_SIZES 6
// #define NUM_CHAR_SETS 6
#define CHARSET_SIZE 256
#define UPPERCASE_START 65
#define LOWERCASE_START 97
#define ALPHABET_RANGE 26
// Global Variables happily live here
TCHAR lpszFont1[LF_FACESIZE+1];
TCHAR lpszFont2[LF_FACESIZE+1];
TCHAR lpszInputFile[MAX_PATH+1];
INT piPointSize[NUM_POINTS_SIZES] = {8, 10, 12, 14, 18, 24};
//BYTE pbCharSet[NUM_CHAR_SETS] = {ANSI_CHARSET, RUSSIAN_CHARSET, GREEK_CHARSET,
// TURKISH_CHARSET, BALTIC_CHARSET, EASTEUROPE_CHARSET};
// BYTE pbCharSet[NUM_CHAR_SETS] = {0, RUSSIAN_CHARSET, GREEK_CHARSET,
// 162, BALTIC_CHARSET, EASTEUROPE_CHARSET};
TCHAR* lplpszCharSet[] = {
TEXT("ANSI_CHARSET"), TEXT("RUSSIAN_CHARSET"),
TEXT("GREEK_CHARSET"),TEXT("TURKISH_CHARSET"),
TEXT("BALTIC_CHARSET"), TEXT("EASTEUROPE_CHARSET"),
TEXT("HEBREW_CHARSET"), TEXT("THAI_CHARSET"),
TEXT("ARABIC_CHARSET"), TEXT("VITANAMESE_CHARSET")
};
INT lCharSetIndex;
BYTE usCurrentCharSet[32];
INT lCharSet;
// Function Prototype definitions.
BOOL bGetNewShellFont();
BOOL bParseCommandLine(LPTSTR lpszFileName);
BOOL bAddFonts(LPTSTR lpszInputFile);
VOID VCompareCharWidths(VOID);
VOID VDisplayProgramUsage(VOID);
VOID VGetCharWidths(HDC hdc, BYTE cs, INT j, CHAR *lpszFont1, INT *piFontWidths, INT *piFontDim, INT *piFontHtDim);
VOID VGetRidOfSlashN(LPTSTR lpszFontName);
INT GdiGetCharDimensions(HDC hdc,TEXTMETRICW *lptm,LPINT lpcy);
BYTE ucGetCharSet(BYTE i);