1 /* 2 * $XConsortium: fontfile.h,v 1.1 91/05/11 09:11:58 rws Exp $ 3 * 4 * Copyright 1991 Massachusetts Institute of Technology 5 * 6 * Permission to use, copy, modify, distribute, and sell this software and its 7 * documentation for any purpose is hereby granted without fee, provided that 8 * the above copyright notice appear in all copies and that both that 9 * copyright notice and this permission notice appear in supporting 10 * documentation, and that the name of M.I.T. not be used in advertising or 11 * publicity pertaining to distribution of the software without specific, 12 * written prior permission. M.I.T. makes no representations about the 13 * suitability of this software for any purpose. It is provided "as is" 14 * without express or implied warranty. 15 * 16 * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL 17 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T. 18 * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 19 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 20 * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 21 * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 22 * 23 * Author: Keith Packard, MIT X Consortium 24 */ 25 26 #ifndef _FONTFILE_H_ 27 #define _FONTFILE_H_ 28 typedef struct _FontEntry *FontEntryPtr; 29 typedef struct _FontTable *FontTablePtr; 30 typedef struct _FontName *FontNamePtr; 31 typedef struct _FontScaled *FontScaledPtr; 32 typedef struct _FontScalableExtra *FontScalableExtraPtr; 33 typedef struct _FontScalableEntry *FontScalableEntryPtr; 34 typedef struct _FontScaleAliasEntry *FontScaleAliasEntryPtr; 35 typedef struct _FontBitmapEntry *FontBitmapEntryPtr; 36 typedef struct _FontAliasEntry *FontAliasEntryPtr; 37 typedef struct _FontBCEntry *FontBCEntryPtr; 38 typedef struct _FontDirectory *FontDirectoryPtr; 39 typedef struct _FontRenderer *FontRendererPtr; 40 41 #define NullFontEntry ((FontEntryPtr) 0) 42 #define NullFontTable ((FontTablePtr) 0) 43 #define NullFontName ((FontNamePtr) 0) 44 #define NullFontScaled ((FontScaled) 0) 45 #define NullFontScalableExtra ((FontScalableExtra) 0) 46 #define NullFontscalableEntry ((FontScalableEntry) 0) 47 #define NullFontScaleAliasEntry ((FontScaleAliasEntry) 0) 48 #define NullFontBitmapEntry ((FontBitmapEntry) 0) 49 #define NullFontAliasEntry ((FontAliasEntry) 0) 50 #define NullFontBCEntry ((FontBCEntry) 0) 51 #define NullFontDirectory ((FontDirectoryPtr) 0) 52 #define NullFontRenderer ((FontRendererPtr) 0) 53 54 #define FONT_ENTRY_SCALABLE 0 55 #define FONT_ENTRY_SCALE_ALIAS 1 56 #define FONT_ENTRY_BITMAP 2 57 #define FONT_ENTRY_ALIAS 3 58 #define FONT_ENTRY_BC 4 59 60 #define MAXFONTNAMELEN 1024 61 #define MAXFONTFILENAMELEN 1024 62 63 #define FontDirFile "fonts.dir" 64 #define FontAliasFile "fonts.alias" 65 #define FontScalableFile "fonts.scale" 66 67 extern FontEntryPtr FontFileFindNameInDir (); 68 extern FontDirectoryPtr FontFileMakeDir (); 69 extern FontRendererPtr FontFileMatchRenderer (); 70 extern char *SaveString (); 71 extern FontScaledPtr FontFileFindScaledInstance (); 72 #endif /* _FONTFILE_H_ */ 73