00001
00007 #ifndef INCL_FONTVGA
00008 #define INCL_FONTVGA 1
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #include "font.h"
00029 #include "vgafile.h"
00030
00031
00032
00033
00034 class Fonts_vga_file : public Vga_file
00035 {
00036 Font fonts[11];
00037 public:
00038 Fonts_vga_file()
00039 { }
00040 void init();
00041
00042 int paint_text_box(Image_buffer8 *win, int fontnum,
00043 const char *text, int x, int y, int w,
00044 int h, int vert_lead = 0, int pbreak = 0)
00045 { return fonts[fontnum].paint_text_box(win, text, x, y, w, h,
00046 vert_lead, pbreak); }
00047 int paint_text(Image_buffer8 *win, int fontnum,
00048 const char *text, int xoff, int yoff)
00049 { return fonts[fontnum].paint_text(win, text, xoff, yoff); }
00050 int paint_text(Image_buffer8 *win, int fontnum,
00051 const char *text, int textlen, int xoff, int yoff)
00052 { return fonts[fontnum].paint_text(win, text, textlen,
00053 xoff, yoff); }
00054
00055 int get_text_width(int fontnum, const char *text)
00056 { return fonts[fontnum].get_text_width(text); }
00057 int get_text_width(int fontnum, const char *text, int textlen)
00058 { return fonts[fontnum].get_text_width(text, textlen); }
00059
00060 int get_text_height(int fontnum)
00061 { return fonts[fontnum].get_text_height(); }
00062 int get_text_baseline(int fontnum)
00063 { return fonts[fontnum].get_text_baseline(); }
00064
00065 Font *get_font(int fontnum)
00066 { return fontnum>=0&&fontnum<8?fonts+fontnum:NULL; };
00067 };
00068
00069 #endif