Back to index

tetex-bin  3.0
fontfile.h
Go to the documentation of this file.
00001 /*
00002  * $XConsortium: fontfile.h,v 1.1 91/05/11 09:11:58 rws Exp $
00003  *
00004  * Copyright 1991 Massachusetts Institute of Technology
00005  *
00006  * Permission to use, copy, modify, distribute, and sell this software and its
00007  * documentation for any purpose is hereby granted without fee, provided that
00008  * the above copyright notice appear in all copies and that both that
00009  * copyright notice and this permission notice appear in supporting
00010  * documentation, and that the name of M.I.T. not be used in advertising or
00011  * publicity pertaining to distribution of the software without specific,
00012  * written prior permission.  M.I.T. makes no representations about the
00013  * suitability of this software for any purpose.  It is provided "as is"
00014  * without express or implied warranty.
00015  *
00016  * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
00017  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T.
00018  * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
00019  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
00020  * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 
00021  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
00022  *
00023  * Author:  Keith Packard, MIT X Consortium
00024  */
00025 
00026 #ifndef _FONTFILE_H_
00027 #define _FONTFILE_H_
00028 typedef struct _FontEntry       *FontEntryPtr;
00029 typedef struct _FontTable       *FontTablePtr;
00030 typedef struct _FontName        *FontNamePtr;
00031 typedef struct _FontScaled      *FontScaledPtr;
00032 typedef struct _FontScalableExtra   *FontScalableExtraPtr;
00033 typedef struct _FontScalableEntry   *FontScalableEntryPtr;
00034 typedef struct _FontScaleAliasEntry *FontScaleAliasEntryPtr;
00035 typedef struct _FontBitmapEntry        *FontBitmapEntryPtr;
00036 typedef struct _FontAliasEntry         *FontAliasEntryPtr;
00037 typedef struct _FontBCEntry     *FontBCEntryPtr;
00038 typedef struct _FontDirectory          *FontDirectoryPtr;
00039 typedef struct _FontRenderer           *FontRendererPtr;
00040 
00041 #define NullFontEntry                  ((FontEntryPtr) 0)
00042 #define NullFontTable                  ((FontTablePtr) 0)
00043 #define NullFontName            ((FontNamePtr) 0)
00044 #define NullFontScaled                 ((FontScaled) 0)
00045 #define NullFontScalableExtra          ((FontScalableExtra) 0)
00046 #define NullFontscalableEntry          ((FontScalableEntry) 0)
00047 #define NullFontScaleAliasEntry        ((FontScaleAliasEntry) 0)
00048 #define NullFontBitmapEntry     ((FontBitmapEntry) 0)
00049 #define NullFontAliasEntry      ((FontAliasEntry) 0)
00050 #define NullFontBCEntry                ((FontBCEntry) 0)
00051 #define NullFontDirectory       ((FontDirectoryPtr) 0)
00052 #define NullFontRenderer        ((FontRendererPtr) 0)
00053 
00054 #define FONT_ENTRY_SCALABLE 0
00055 #define FONT_ENTRY_SCALE_ALIAS     1
00056 #define FONT_ENTRY_BITMAP   2
00057 #define FONT_ENTRY_ALIAS    3
00058 #define FONT_ENTRY_BC              4
00059 
00060 #define MAXFONTNAMELEN          1024
00061 #define MAXFONTFILENAMELEN  1024
00062 
00063 #define FontDirFile      "fonts.dir"
00064 #define FontAliasFile           "fonts.alias"
00065 #define FontScalableFile    "fonts.scale"
00066 
00067 extern FontEntryPtr  FontFileFindNameInDir ();
00068 extern FontDirectoryPtr     FontFileMakeDir ();
00069 extern FontRendererPtr      FontFileMatchRenderer ();
00070 extern char          *SaveString ();
00071 extern FontScaledPtr FontFileFindScaledInstance ();
00072 #endif /* _FONTFILE_H_ */