home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / vol_300 / 334_01 / bitmap.h < prev    next >
Text File  |  1991-02-05  |  3KB  |  69 lines

  1. /* bitmap.h */
  2.  
  3. /* allow up to 16 bit width for character array */
  4. typedef unsigned int char_row;
  5. typedef char_row * char_box;
  6.  
  7. #define FNT_CHARS   96      /* Number of characters in the font set */
  8.  
  9. #define FNT5X9 0
  10. #define FNT5X9_VCHAR 11 /* vertical spacing between characters */
  11. #define FNT5X9_VBITS 9 /* actual number of rows of bits per char */
  12. #define FNT5X9_HCHAR 7 /* horizontal spacing between characters */
  13. #define FNT5X9_HBITS 5 /* actual number of bits per row per char */
  14. extern char_row fnt5x9[FNT_CHARS][FNT5X9_VBITS];
  15.  
  16. #define FNT9X17 1
  17. #define FNT9X17_VCHAR 21 /* vertical spacing between characters */
  18. #define FNT9X17_VBITS 17 /* actual number of rows of bits per char */
  19. #define FNT9X17_HCHAR 13 /* horizontal spacing between characters */
  20. #define FNT9X17_HBITS 9 /* actual number of bits per row per char */
  21. extern char_row fnt9x17[FNT_CHARS][FNT9X17_VBITS];
  22.  
  23. #define FNT13X25 2
  24. #define FNT13X25_VCHAR 31 /* vertical spacing between characters */
  25. #define FNT13X25_VBITS 25 /* actual number of rows of bits per char */
  26. #define FNT13X25_HCHAR 19 /* horizontal spacing between characters */
  27. #define FNT13X25_HBITS 13 /* actual number of bits per row per char */
  28. extern char_row fnt13x25[FNT_CHARS][FNT13X25_VBITS];
  29.  
  30.  
  31. typedef unsigned char pixels;  /* the type of one set of 8 pixels in bitmap */
  32. typedef pixels *bitmap[];  /* the bitmap */
  33.  
  34. extern bitmap *b_p;                        /* global pointer to bitmap */
  35. extern unsigned int b_currx, b_curry;    /* the current coordinates */
  36. extern unsigned int b_xsize, b_ysize;    /* the size of the bitmap */
  37. extern unsigned int b_planes;            /* number of color planes */
  38. extern unsigned int b_psize;            /* size of each plane */
  39. extern unsigned int b_rastermode;        /* raster mode rotates -90deg */
  40. extern unsigned int b_linemask;            /* 16 bit mask for dotted lines */
  41. extern unsigned int b_value;            /* colour of lines */
  42. extern unsigned int b_hchar;            /* width of characters */
  43. extern unsigned int b_hbits;            /* actual bits in char horizontally */
  44. extern unsigned int b_vchar;            /* height of characters */
  45. extern unsigned int b_vbits;            /* actual bits in char vertically */
  46. extern unsigned int b_angle;            /* rotation of text */
  47. extern char_box b_font[FNT_CHARS];        /* the current font */
  48. extern unsigned int b_pattern[];
  49. extern int b_maskcount;
  50. extern unsigned int b_lastx, b_lasty;    /* last pixel set - used by b_line */
  51.  
  52.  
  53. extern void b_makebitmap();
  54. extern void b_freebitmap();
  55. extern void b_setpixel();
  56. extern unsigned int b_getpixel();
  57. extern void b_line();
  58. extern void b_setmaskpixel();
  59. extern void b_putc();
  60. extern void b_charsize();
  61. extern void b_setvalue();
  62.  
  63. extern int b_setlinetype();
  64. extern int b_move();
  65. extern int b_vector();
  66. extern int b_put_text();
  67. extern int b_text_angle();
  68.  
  69.