1 /* ************************************************************************ */ 2 3 4 /* Header file for the `xvertext' routines. 5 6 Copyright (c) 1992 Alan Richardson (mppa3@uk.ac.sussex.syma) */ 7 8 9 /* ************************************************************************ */ 10 11 12 #ifndef _XVERTEXT_INCLUDED_ 13 #define _XVERTEXT_INCLUDED_ 14 15 16 #define XV_VERSION 2.0 17 #define XV_COPYRIGHT "xvertext routines Copyright (c) 1992 Alan Richardson" 18 19 20 /* ---------------------------------------------------------------------- */ 21 22 23 /* *** The font structures *** */ 24 25 struct BitmapStruct { 26 int bit_w; 27 int bit_h; 28 29 Pixmap bm; 30 }; 31 32 struct XRotCharStruct { 33 int ascent; 34 int descent; 35 int lbearing; 36 int rbearing; 37 int width; 38 39 BitmapStruct glyph; 40 }; 41 42 struct XRotFontStruct { 43 int dir; 44 int height; 45 int max_ascent; 46 int max_descent; 47 int max_char; 48 int min_char; 49 char *name; 50 51 XFontStruct *xfontstruct; 52 53 XRotCharStruct per_char[95]; 54 }; 55 56 57 /* ---------------------------------------------------------------------- */ 58 59 60 extern float XRotVersion(char *, int); 61 extern XRotFontStruct *XRotLoadFont(Display *, char *, float); 62 extern void XRotUnloadFont(Display *, XRotFontStruct *); 63 extern int XRotTextWidth(XRotFontStruct *, char *, int); 64 extern void XRotDrawString(Display *, XRotFontStruct *, Drawable, GC, 65 int, int, char *, int); 66 extern void XRotDrawAlignedString(Display *, XRotFontStruct *, Drawable, GC, 67 int, int, char *, int); 68 69 70 /* ---------------------------------------------------------------------- */ 71 72 73 #define TLEFT 1 74 #define TCENTRE 2 75 #define TRIGHT 3 76 #define MLEFT 4 77 #define MCENTRE 5 78 #define MRIGHT 6 79 #define BLEFT 7 80 #define BCENTRE 8 81 #define BRIGHT 9 82 83 84 /* ---------------------------------------------------------------------- */ 85 86 87 extern int xv_errno; 88 89 #define XV_NOFONT 1 /* no such font on X server */ 90 #define XV_NOMEM 2 /* couldn't do malloc */ 91 #define XV_NOXIMAGE 3 /* couldn't create an XImage */ 92 93 94 /* ---------------------------------------------------------------------- */ 95 96 97 #else 98 99 extern int xv_errno; 100 101 #endif 102