00001 00002 //--------------------------------------------------------------------------- 00003 #include <fs/ras/fsBmfFnt.h> 00004 00005 #include <stdio.h> // putchar 00006 #include <cassert> 00007 //--------------------------------------------------------------------------- 00008 int main() 00009 { 00010 using namespace fs::ras; 00011 00012 // simulate a RGBA-8888 bitmap surface 00013 const size_t w = 70; 00014 const size_t h = 20; 00015 BmfFnt_t::PxFmt8888_t aData[w * h] = { 0 }; 00016 00017 // load a BMF font 00018 BmfFnt_t Fnt("bringn12.bmf"); 00019 assert(Fnt.IsValid() && "Couldn't load the BMF font!"); 00020 00021 // print text using the font 00022 Fnt.Print(0, 0, "HELLO!", aData, w, h); 00023 00024 // show the surface 00025 for(int y = 0; y < h; ++y) 00026 { 00027 for(int x = 0; x < w; ++x) 00028 { 00029 ::putchar(aData[y * w + x].a ? 'o' : ' '); 00030 } 00031 ::putchar('\n'); 00032 } 00033 00034 return 0; 00035 } 00036 //--------------------------------------------------------------------------- 00037 // ooo 00038 // oooo 00039 // oo oo oo ooooo 00040 // oo oo oooooo oo oo ooooo 00041 // ooo oo oooooooo oo oo ooooo ooooo 00042 // oo oo ooooooooo oo oo ooooooo oooo 00043 // oo oo oo ooo o o ooo ooo ooo 00044 // ooooooooo oo ooo o o oo oo ooo 00045 // ooooooooo oooooooooo o o oo oo oo 00046 // ooooooooooo oooooooooo oo oo o oo oo 00047 // oooooo oo ooo oo oo oooo oo oooo ooo ooooo oo 00048 // o oo ooo ooooooooo ooooooooo ooooooooo ooooooooo 00049 // ooo ooo oooooooo oooooooo oooooooo oooooo 00050 // ooo oo oooooo ooooo ooooo 00051 // oo ooo ooo ooo 00052 // ooo 00053 //---------------------------------------------------------------------------