// Font generated by stb_font_inl_generator.c (4/1 bpp) // // Following instructions show how to use the only included font, whatever it is, in // a generic way so you can replace it with any other font by changing the include. // To use multiple fonts, replace STB_SOMEFONT_* below with STB_FONT_times_bold_28_usascii_*, // and separately install each font. Note that the CREATE function call has a // totally different name; it's just 'stb_font_times_bold_28_usascii'. // /* // Example usage: static stb_fontchar fontdata[STB_SOMEFONT_NUM_CHARS]; static void init(void) { // optionally replace both STB_SOMEFONT_BITMAP_HEIGHT with STB_SOMEFONT_BITMAP_HEIGHT_POW2 static unsigned char fontpixels[STB_SOMEFONT_BITMAP_HEIGHT][STB_SOMEFONT_BITMAP_WIDTH]; STB_SOMEFONT_CREATE(fontdata, fontpixels, STB_SOMEFONT_BITMAP_HEIGHT); ... create texture ... // for best results rendering 1:1 pixels texels, use nearest-neighbor sampling // if allowed to scale up, use bilerp } // This function positions characters on integer coordinates, and assumes 1:1 texels to pixels // Appropriate if nearest-neighbor sampling is used static void draw_string_integer(int x, int y, char *str) // draw with top-left point x,y { ... use texture ... ... turn on alpha blending and gamma-correct alpha blending ... glBegin(GL_QUADS); while (*str) { int char_codepoint = *str++; stb_fontchar *cd = &fontdata[char_codepoint - STB_SOMEFONT_FIRST_CHAR]; glTexCoord2f(cd->s0, cd->t0); glVertex2i(x + cd->x0, y + cd->y0); glTexCoord2f(cd->s1, cd->t0); glVertex2i(x + cd->x1, y + cd->y0); glTexCoord2f(cd->s1, cd->t1); glVertex2i(x + cd->x1, y + cd->y1); glTexCoord2f(cd->s0, cd->t1); glVertex2i(x + cd->x0, y + cd->y1); // if bilerping, in D3D9 you'll need a half-pixel offset here for 1:1 to behave correct x += cd->advance_int; } glEnd(); } // This function positions characters on float coordinates, and doesn't require 1:1 texels to pixels // Appropriate if bilinear filtering is used static void draw_string_float(float x, float y, char *str) // draw with top-left point x,y { ... use texture ... ... turn on alpha blending and gamma-correct alpha blending ... glBegin(GL_QUADS); while (*str) { int char_codepoint = *str++; stb_fontchar *cd = &fontdata[char_codepoint - STB_SOMEFONT_FIRST_CHAR]; glTexCoord2f(cd->s0f, cd->t0f); glVertex2f(x + cd->x0f, y + cd->y0f); glTexCoord2f(cd->s1f, cd->t0f); glVertex2f(x + cd->x1f, y + cd->y0f); glTexCoord2f(cd->s1f, cd->t1f); glVertex2f(x + cd->x1f, y + cd->y1f); glTexCoord2f(cd->s0f, cd->t1f); glVertex2f(x + cd->x0f, y + cd->y1f); // if bilerping, in D3D9 you'll need a half-pixel offset here for 1:1 to behave correct x += cd->advance; } glEnd(); } */ #ifndef STB_FONTCHAR__TYPEDEF #define STB_FONTCHAR__TYPEDEF typedef struct { // coordinates if using integer positioning float s0,t0,s1,t1; signed short x0,y0,x1,y1; int advance_int; // coordinates if using floating positioning float s0f,t0f,s1f,t1f; float x0f,y0f,x1f,y1f; float advance; } stb_fontchar; #endif #define STB_FONT_times_bold_28_usascii_BITMAP_WIDTH 256 #define STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT 104 #define STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT_POW2 128 #define STB_FONT_times_bold_28_usascii_FIRST_CHAR 32 #define STB_FONT_times_bold_28_usascii_NUM_CHARS 95 #define STB_FONT_times_bold_28_usascii_LINE_SPACING 18 static unsigned int stb__times_bold_28_usascii_pixels[]={ 0x02600200,0x00000000,0x00000000,0x34eedc88,0x18059ddd,0x00000000, 0x00000010,0x4c000000,0x00000000,0x06200800,0x19d900ee,0x3f2213e0, 0xfd812604,0xddd93004,0x0001599b,0x79dffdb7,0x2abff100,0x7dcc04ff, 0x3b2e000b,0x2602cdee,0xfeea83fe,0x3b2601df,0x0fb802de,0x36e20be6, 0x0fc800bd,0x6ffec400,0xdb88000b,0x0b0bceff,0x01eb8364,0x13e07be2, 0x76401ff1,0x01fff500,0xd301774c,0x3bfa6005,0x0037fa61,0x0ffeabff, 0x75fd6f4c,0xbfd300be,0x406ff4c3,0x9ee0fffc,0xf980fffa,0xd807ff15, 0x3e607dc7,0x200ffa8f,0x7cc002fa,0x004ffa8d,0x445effec,0x3e06ffeb, 0xc803b604,0x7f44f86f,0x8803f204,0x0bee07ff,0x7dc02b80,0xfff880ef, 0x7d57fe02,0x88ff882f,0x3ee07fa7,0xfff980ef,0xd0fffec2,0x227ff41f, 0x3ff23ff9,0x0f917a02,0x17fe2dfd,0x74002744,0x003ff62f,0xf5027fec, 0x9807e60d,0x1ff900ef,0x13fe24f8,0x5cc027dc,0x0001db01,0x3ffe6057, 0x03ffee02,0x2ffaaffc,0x44f15fb8,0x17ffcc1f,0x641fff70,0x7ff50fff, 0xf907ffe4,0x83ffd45f,0x222f43f8,0x0dff16ff,0xf30003f2,0x8037dc7f, 0x6c806ffd,0x9fb00f90,0x9f03ff60,0x7cc2ffc4,0x7dc0000f,0x741a0000, 0x7fcc07ff,0x2abff05f,0x9ffe82ff,0x3fa0e478,0x7ffc407f,0xf89bfee5, 0xd1fff22f,0x7ffcc5ff,0x27c2f981,0x7ff9bfe2,0xa8002fa8,0x00fee5ff, 0x2007fff6,0x5009d068,0x0ffd01ff,0xc86fe89f,0x6665406f,0x440be60c, 0x21ba9adc,0x2fffdc19,0x40ffffc0,0x05ff55ff,0x08f5fffb,0x402fffdc, 0xff31ffff,0x7fec0889,0x88fffe25,0xddd53fff,0xddfddddf,0xff8b7f41, 0x8002f446,0x4ea8fffa,0x00ffff00,0x4017cc14,0x5ff83ff9,0x23fec4f8, 0xfc804ff8,0x541720ff,0x1ffdc8ef,0x9fff90e2,0x05fffd00,0x0bfeabff, 0x01ffffea,0xd009fff9,0x17fc5fff,0x883bfe20,0x7ffc3fff,0xddffdd54, 0x5c1ddfdd,0xc87ff17f,0xff10000f,0x2a0019ff,0x40006fff,0xdff1007b, 0x89f09ff0,0x1ffdc6fc,0x887ffd40,0x71ffa82f,0xfe8b0fff,0xffd803ff, 0xf55ff84f,0x3fffa05f,0xfffd01ef,0x9fffb007,0x3ee007ec,0x45fff80d, 0x45e84fff,0x51fd107c,0x002f98bf,0x07fffe20,0x323dfff5,0x40004fff, 0x1ffe005e,0xb13e17f2,0x03ffc89f,0xf70fffa8,0x7e49ff10,0x7ffc485f, 0xfffd803f,0xff55ff85,0x7fffec05,0x3ffff84f,0x25fffd80,0x204f807c, 0xff10fffc,0x743f885f,0x205e4c05,0x700105e8,0x81ffff9d,0x7fff45fa, 0x0be20003,0xd81fff80,0xbf127c0f,0x5005ffb0,0x21721fff,0x3ff61ffd, 0x7fff4482,0x4fffd803,0x5ff55ff8,0xfffffa80,0x01ffff44,0xb527ffec, 0xfe804a80,0x0fffdbff,0x013e17cc,0x2e20fc80,0xfe982ebe,0xa8dfffb0, 0x27fff40f,0x001f7000,0xea817ffc,0x816e53e4,0xfa802fff,0xf889b0ff, 0x207ffc6f,0x27ffec29,0x41ffff40,0x05ff55ff,0x1fffff10,0x4027ffec, 0x1263fffe,0x3ae00370,0x266ffddf,0xfcccdfdc,0x26000ccd,0xfd9fec2f, 0xf993fe24,0x20b64fff,0x0005fffc,0xfff00176,0x4f936a05,0x3ffa05d9, 0x0fffa802,0x23ffb87d,0x40b86ffb,0xf805fffb,0x5ff81fff,0xf1005ff5, 0x7dc7fff9,0xfff805ff,0x0060141f,0x2e4ffd80,0xffffffff,0xd1000fff, 0xf92ff88b,0x917ff23f,0x0b75ffff,0x001bffea,0x3e001fc4,0x40fd81ff, 0x3617e24f,0xffa802ff,0xffd87b0f,0x160fffa2,0x101bffe2,0x3fe0dfff, 0x8505ff55,0x44bff978,0x7c406fff,0x000005ff,0x883ffe20,0xfd999df9, 0x3f200199,0xfc97fdc0,0xb0fffd2f,0x201dffff,0x000ffff8,0x7c000fa8, 0x42fe40ff,0x3227ec4f,0xffa802ff,0xffe8b70f,0xc83ffd91,0x03fff701, 0xf80fffdc,0xb05ff55f,0x4ff8bc41,0x700fffdc,0x0ba83fff,0x90005710, 0x87f103ff,0x2f98005e,0xff92ffc8,0x213fffa7,0x0c2ffffe,0x1009fff9, 0x220036c5,0x84fe87ff,0x2e3fe44f,0xffa803ff,0xffe8d50f,0x547feacc, 0x02ffec02,0x7fc07ffd,0x9b05ff55,0x82ff8bc4,0xff105ffd,0x06ffa87f, 0x64007ffb,0x43f302ff,0x5e8004f8,0x3f25ff30,0x7ffff91f,0xcfffff98, 0x7ffdc3c9,0x3f8fa201,0x41ffcc00,0x6c4f85ff,0x027fc47f,0x7887ffd4, 0xfda7ffe4,0x1223c88f,0x7ec1ffe4,0xaaffc03f,0x13fd82ff,0xfb817eef, 0x81ffd83f,0xff80fffc,0xefc8805f,0xf983ee00,0x007e4002,0x89bf67fd, 0xdcffffff,0xfffffecf,0x37dff705,0x3f517544,0x80ffa800,0x7c4f87fe, 0x806fc86f,0x8f60fff9,0x3f623ed8,0x300640bd,0x9fdb9df9,0x2abff003, 0xffea82ff,0x9803eefd,0xcefdcefd,0x20bff300,0x36602ffc,0x46d801cf, 0x3e6000fb,0x7c6f5402,0x7ffec41d,0x3ff20cff,0x3b2a00ef,0x40dfeeff, 0x4fd8006c,0x4f81ffb0,0x3e217fe2,0x7ffcc01f,0x00003a20,0x3fa20073, 0x3fe002ff,0x4405ff55,0x10000fa9,0x06200133,0x04c40110,0x05306a00, 0x2a004d80,0x054c401c,0x30001510,0x000d4015,0x7e403be2,0xff127c0f, 0x3017ee09,0x00b50fff,0x26002cc0,0xf000ffff,0x00bfeabf,0x00000162, 0x00000000,0x00000000,0x00000000,0x64000000,0x217f200e,0x9027f44f, 0xf8ae981f,0x001b707f,0xf5000498,0xf9803bff,0x009ff55f,0x00000000, 0x00000000,0x00000000,0x00000000,0x075c0000,0x9f01ff10,0x3200fe98, 0x3e2ff20e,0x00ba603f,0x50001366,0x479ffffb,0x933cccb8,0x00003799, 0x00000000,0x00000000,0x00000000,0x00000000,0x7e402b80,0x9109f00c, 0x8864409d,0x7005fcef,0xb95357bb,0x98000019,0x000009ab,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00401a80,0x800054c0, 0x00009aa9,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x08000000,0x00000020,0x00000000,0x10100013, 0x77640000,0x7776cc6e,0x00000001,0x566f6540,0x000002aa,0x3bbba600, 0x99973eee,0x33326399,0xca800001,0xbec99ccc,0x7ff65401,0x40752cff, 0x01deeed9,0x20b7b220,0x401ceda8,0xd81dfdb8,0xfdfb1005,0x2fe4125b, 0x21fff200,0x8002fff9,0x2e201fb8,0x3f602dfe,0xffffe89f,0x401fd000, 0x902efdea,0x3fffffff,0x50bfffa2,0x0244007f,0xbd9fff70,0xfb103fff, 0x3f6a259f,0x1ff903ff,0xb100bfe6,0x8fec039f,0xfff102fc,0x0fb87fff, 0xc88efd40,0xfff886ff,0x1ffea002,0x800bffe2,0x501fffc8,0x05ffffff, 0x7fd49ff7,0x03ff2002,0x0ffdbfdc,0xfffffff8,0x21fffcc6,0x07e40069, 0x26fff980,0x3e60effa,0x3fe202ff,0x744ffa83,0x0ffea06f,0x7fd4df70, 0xffebcd80,0x1017c46f,0x0ff103ff,0xa8007ffe,0xfff887ff,0xffec8802, 0xeff981ff,0x740fffff,0x1bfe63ff,0x407ffd40,0x0bf76ff8,0x555555d3, 0xb8dffb03,0x0ffe2003,0x217ffc40,0xfff13fff,0x907f300b,0x1ffb8bff, 0x4403ffa8,0x17fe25ff,0x1fffc837,0x1ff702f4,0x164c1ee0,0x21ffea00, 0x4002fff8,0x3c81fffb,0xf0ffffaa,0x3ffcc7ff,0x07fffc40,0x64037fd4, 0x7ffd4003,0xfb800361,0xfff1006f,0xfb4ffe85,0x0f2003ff,0xfb83fff6, 0x037fc41f,0xff12ffd4,0xfff8808f,0xff903dc0,0x1000340b,0xfff55bb7, 0x935fff10,0x7fd4039d,0xffa8281f,0x527fe43f,0xfbb00bff,0xdff701ff, 0x157bdf00,0x22bffd00,0x7fff4004,0x2fff8802,0x7fcf7fec,0x20a2006f, 0xf90efffb,0x007ffd0d,0x7fc4bff9,0x27fc401f,0xffb817cc,0x64c181df, 0xff881ccc,0x87ffedbd,0xfcfdfff8,0xfff502ff,0x3ffe2003,0xf92ffcc1, 0xf9cb805f,0x3fb220ff,0xff502cff,0xb807ffff,0x001c8fff,0x017fffaa, 0xfb0bffe2,0x0bfff7df,0xffff3000,0xf981df5f,0x80bcbaff,0x3fe25ffd, 0x027dc02f,0x3ffe609d,0x7dc00dff,0x0ffe82ff,0x3e21fffa,0xfff30cff, 0x03fff501,0x441ffe20,0x01ffbbfd,0x0fff9b4c,0x33fffb22,0xfffffb02, 0x7fc01dff,0x4f4006cf,0x4401ffff,0x7fec2fff,0x004fffdd,0xfffff500, 0x3bfff20d,0x7f42fffe,0x0fffe24f,0x80f7fdc4,0x3fff207c,0xf100cfff, 0x6ffb85ff,0x7c43ffd4,0x1fff42ff,0x800fffd4,0x32e04ffa,0x1e8801ba, 0xf701fff3,0xfeec80df,0x205fffff,0x2003fffc,0x09fff959,0x742fff88, 0x3fffebff,0x3fe60000,0xffe84fff,0xf83fff25,0x3ffe24ff,0xffffe884, 0x201f982f,0xeffffffc,0x42fff881,0x7fd45ffc,0x42fff887,0xffa85ffd, 0x0df9001f,0x1ec002ec,0xf701fff3,0xfd9800df,0xff101fff,0x88ec001f, 0x2200ffff,0x7ffc2fff,0x004fffe9,0x3ffbee00,0x2fffc4ff,0x7fc7fff1, 0x13ffe24f,0x05fffe98,0xffe9809f,0x7c40ffff,0x27ff42ff,0x3e21ffea, 0x37fec2ff,0x800fffd4,0x7ff501fe,0x2e013555,0x407ffcc5,0x30006ffb, 0x7ec07fff,0xfb1a2005,0x7fc407ff,0x29ff92ff,0x9305fffc,0x419fffff, 0xfffb3fd8,0x22fffc3f,0x3ffa5ffe,0x00fffe24,0x320fffd1,0xffff5006, 0x2fff887f,0x3ea27ffc,0x2fff887f,0x7d437fec,0x2fc801ff,0x3ffffee0, 0x3e60efff,0xfffcaaab,0x037fdc1b,0x409ff300,0x0b2002f9,0x440ffff3, 0xfffdafff,0x01bffea4,0xf909fffb,0x1fffe43f,0xffe8bffd,0xf897ff65, 0xffb801ff,0x241fa80f,0x88bfff90,0x7fec2fff,0x443ffd45,0x7fec2fff, 0x01fffa84,0x3e2017cc,0xffffffff,0x3ffffea6,0x5c4fffff,0x6c0006ff, 0x1003401f,0xff99999f,0x3fe205ff,0xff10312f,0xfffc80ff,0x220ffe83, 0x3ff25fff,0xf927fec6,0x07ffc4bf,0xf037fc40,0x3ee01d87,0x17ffc47f, 0xff51bfee,0x2fff881f,0x7d417ff4,0x0fa201ff,0xdddf7066,0x2a1fffdd, 0xffffffff,0x37fdc4ff,0x821f2000,0x272e0049,0xfffb9999,0x05fff106, 0x407fff70,0xff83fffc,0x727fec0f,0x2ffd8fff,0xff897fe6,0x813f6006, 0x3e026c6d,0x17ffc45f,0xfc83ffe6,0x7ffc40ff,0x54077fc2,0x37601fff, 0x20ea9999,0x4df102fd,0xfb999998,0x7fdc09ff,0x4067e406,0x0d8ff43e, 0x7401d100,0xff881fff,0xfff9002f,0x0ffff201,0xffb07ffa,0xb0fff443, 0x26fe81ff,0x37a22ff9,0x2a00fe80,0xf80bf60f,0x17ffc42f,0x764effec, 0x7fc43fff,0x403fea5f,0xf901fffa,0x8fffffff,0x07f502fe,0x701fff30, 0xfff80dff,0xf987913f,0x320049cf,0x2fffdc05,0x0017ffcc,0xf903bff7, 0x9ff307ff,0x7c41ffc4,0x2207fe4f,0xb8bf90ff,0x3f50bfff,0x3f63f880, 0x985fb83f,0xffb03fff,0x39bff59f,0x66f4e7c4,0x3ff201df,0xffffa82f, 0x6cc5ffff,0x2edcacdf,0x01fff300,0xd980fff9,0xd02dffff,0x22001bff, 0x7ffcc05f,0x3fff222f,0x3b62000c,0xcefdccff,0x337fa601,0x3f6602ef, 0x3a201eec,0xffb04fce,0x20019dff,0x3baf365d,0xe983fecc,0x3102ffff, 0x98300221,0x7ffe5c01,0xfff31cff,0x09ffffff,0x0026aa62,0x441fff30, 0x02dffffc,0x03300198,0x16fffdc0,0x7ffffedc,0x55555534,0x26a62000, 0x4cc40009,0x0004c000,0x02a60031,0x4418a600,0x000001aa,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, 0xeeda8000,0xddd903ee,0xeeeed85b,0x32a5eeee,0xceeeeeee,0x764c02bc, 0xbcceeeee,0x3eeed881,0xdddd9300,0xddd7005d,0x3b2a39dd,0x01cdeeee, 0x7777764c,0x77764c3d,0xb80a204e,0x71deeeee,0x19bddddb,0xd72f76c4, 0x819bdddd,0x265eeec9,0xcdeeeeec,0x0f7bb720,0x5896f5cc,0x3bbb7260, 0x3fa21cee,0xdd301fff,0xffffff30,0xff709fff,0xffd533bf,0xfffa801b, 0x0dfffc9e,0x0027ffc4,0x01bfffea,0x407ffffa,0x000ffffa,0x00ffffd4, 0x3e803dfb,0x07fffdc0,0x80ffffe6,0xffffa86d,0x4067dc01,0x100ffffb, 0x46fe40dd,0x8807fdf9,0xf302ffff,0x3201ffff,0xfffffb84,0xf981ffff, 0xffff85ff,0x9bffe200,0xff86fff8,0x774c004f,0x36a01fff,0xf300ffff, 0xf1000dff,0x2fcc0fff,0x7c01fe40,0xffc81fff,0x740b605f,0x35403fff, 0x80dfff30,0x41ff704d,0xff007ffc,0x3fa203ff,0x07706fff,0x9999bdfb, 0x3ffe60ff,0x02fffc85,0x3fa37ffc,0x27ff42ff,0x3fef6200,0x3fe7605f, 0x3ffe207f,0xfff88006,0x7007d307,0xff9007ff,0xffff109f,0xfff50340, 0x2602d80d,0x1e405fff,0x3ee37fcc,0xfffd007f,0x3feb6201,0xe83b84ff, 0x2609f300,0xffa85fff,0x37ffc05f,0xfd13ffee,0x8d88009f,0x6880ffff, 0x7c40ffff,0xff0006ff,0x003d50ff,0x199bfff9,0x41fffe20,0x4a82fffd, 0x80ffff40,0x7ffcc068,0x7dc1e405,0x03ffd45f,0x100fffe8,0x0fffff2b, 0x7e403077,0x0bfff302,0xf80bfff5,0x7ffe46ff,0xdba7ff42,0x7e56202d, 0xff3c84ff,0x7ffc40ff,0xffff0006,0xc9800eb8,0x00ccdfff,0x320bfff6, 0x01d85fff,0xc82fffdc,0x2fffcc02,0x3ff60f20,0x803ffd44,0xb100fffe, 0x70ffffec,0x207f8007,0xfb85fff9,0x7ffc03ff,0x207fff46,0xffedcffe, 0x3e6b102f,0x3fe687ff,0x3ffe207f,0xffff0006,0x7fc0036c,0xfff5003f, 0x1ffffd0d,0x7fc40344,0x403440ff,0x6405fff9,0x544fff83,0xffd007ff, 0xe896201f,0x0770ffff,0xf3027cc0,0xfff98bff,0x26fff806,0xfe83fffa, 0x0dff91ff,0x2fffd962,0x07fff92a,0x001bffe2,0x7f47fffc,0x7ffc001f, 0x3fffe003,0x3fff32a1,0x7e400ee4,0x401dc4ff,0x6405fff9,0x544ffe83, 0xffd007ff,0xf316201f,0x00eebfff,0x3e602fc8,0xffecceff,0xffff003e, 0x203bffd9,0x3fea4ffe,0x7fd4b107,0xfff8366f,0x1bffe207,0x7ffffc00, 0x2000efff,0x32003fff,0x26764fff,0x003a6fff,0x3a3fffc4,0x5fff9800, 0x7fdc1e40,0x803ffd45,0xb100fffe,0x79ffff50,0x203f4007,0xffaefff9, 0x3fe003ff,0x401aaaef,0x3fea4ffe,0xffe8b107,0x7ffc599f,0x1bffe207, 0x4ffffc00,0x2005ffff,0x22003fff,0x74d17fff,0x0059afff,0x4a97ffec, 0x0bfff300,0x7ff983c8,0xe803ffdc,0x0b100fff,0x0fbfffee,0x2602fcc0, 0xfff55fff,0x3ffe001f,0x27ff4006,0xb101fff5,0x2cdfffb8,0xf103fffc, 0x3e000dff,0xffff37ff,0x0fffe009,0x95fffb00,0x66fffdc5,0x7ffd4002, 0x3e6001b6,0x81e405ff,0xffa8dffe,0xfffd007f,0xfd816201,0xf9003fff, 0x5fff9805,0x401bfff6,0x74006fff,0x3ffea4ff,0x7fc45880,0x7fff86ff, 0x01bffe20,0xb9fffe0e,0xf802ffff,0x7d4003ff,0x7fc46eff,0xfd0006ff, 0x4c00b7ff,0x16405fff,0xbcfffe88,0xffd007ff,0x8816201f,0xd003fffe, 0xbfff300f,0x027fff44,0x20037ffc,0x3fea4ffe,0xfc85880f,0x7fff83ff, 0x01bffe20,0x8ffff0d1,0x401ffffd,0xf8003fff,0xffd84fff,0xff70004f, 0xff8003ff,0x200ec06f,0x8fff5098,0x3ffa2fe8,0xf1016207,0xbf3007ff, 0x8bfff300,0x401ffff9,0x74006fff,0x3ffea4ff,0xff985880,0x07fff80f, 0x701bffe2,0xd0ffff0b,0x7c01dfff,0x640033ff,0xffa80fff,0xff10000f, 0xffd000df,0x4000f80d,0x7fe47ffa,0x981bffa5,0x03ffa806,0xf9802fb8, 0xfffc85ff,0xdfff100e,0x24ffe800,0x6880fffa,0x3fe09fb0,0xfff300ff, 0x2227cc0d,0xff887fff,0xff900eff,0x7c40097b,0x01bfe05f,0x005ff900, 0x203fff90,0xffa8004c,0xff27fd47,0x00fe40bf,0x7f401fdc,0x6fffa800, 0x20bfffd0,0x4007fff9,0x3fee5fff,0xa80fa81f,0xffff881f,0x1ffff501, 0x4c3ffa88,0xfc80ffff,0xd880efff,0xfd8004ff,0x000ff201,0x4000df10, 0x3262fffd,0xfff70005,0xff10fe81,0xfffb501d,0x403d8019,0x7e4c05f9, 0x4c3dffff,0x911effff,0x09bffffd,0x37ffffb0,0x261dffff,0x2c0ceffc, 0x3ffffae2,0xffd930be,0xffffffff,0x3fae25ff,0x3aa4efff,0x04efffff, 0x406a8000,0xd80000f8,0x7fe40003,0x000cffff,0x0bfffd88,0x37fb7b22, 0x00800000,0x00000d44,0x00000000,0x00000000,0x00000000,0x18000000, 0x10000180,0x26200001,0x2a00009a,0x301aaaaa,0x00000003,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0xeeeec800, 0xeeeeeeee,0x3bbbb260,0xeeca8cde,0xb10cdeee,0x4c005ddd,0xeeeeeeec, 0x934eeeee,0xdddddddd,0x6545dddd,0xcdeeeeee,0x776cc01b,0x3bbb261e, 0x1bcceeee,0xeeeeee88,0xeeeeeeee,0xdddddb35,0x7776d47b,0x3bbbae2d, 0x76c40cee,0xddd935ee,0x64419bdd,0x0018801d,0x3b910800,0x80df6dc0, 0x9999aefe,0xf504ffff,0xff501fff,0xfff101ff,0xfff50007,0xff95333f, 0x9efffa8b,0x83ffca99,0xcaadfffc,0x3e602fff,0xfffa82ff,0x3fffda9e, 0x6cdeffc4,0xfca9bfff,0x3ffffa27,0x2607fd01,0x5405ffff,0xffffa83f, 0x807ffc80,0x2a00007c,0x10fff77d,0x07ff53fd,0x3fff209f,0xffff100f, 0x81bffe60,0x88003fff,0xbd107fff,0x306fff88,0xbfff507f,0x105fffa8, 0xff305fff,0x3fffc8bf,0xfff90fe2,0x7fcc7b85,0x809d04ff,0x6407fffb, 0x0ffff105,0x9003fff6,0xeb88000f,0x1fffb3ff,0x3ffe5fe8,0x7fcc1a20, 0x3fe202ff,0xdfff106f,0x001fff40,0x503fffc4,0x06fff88b,0x3ffe60f2, 0x83fffb85,0xf882fff8,0x7ffc45ff,0x3ff21e26,0xffc8682f,0x802dc1ff, 0xd103fffe,0x1bffe201,0x6401ff4c,0xff930007,0x44ff985d,0x3ff23ff8, 0x7fec0e20,0x7ffc405f,0x0dfff106,0x8001fff4,0x12187fff,0x248dfff1, 0x5fff9839,0x881ffff0,0xff882fff,0x0ffff85f,0x5fff9071,0x3fffa070, 0xfa801a66,0x03c80fff,0x101bffe2,0x7001f200,0x08039ffd,0x2e22ffb8, 0xffff5001,0x6fff8803,0x40dfff10,0x332e3ffe,0xffff00cc,0x3fe20398, 0x2602346f,0xff905fff,0x2fff885f,0x445fff88,0xfc805fff,0x3e6002ff, 0x00e8bfff,0x227ffec0,0x7ffc4069,0x0f900006,0x17dff930,0x1ffec000, 0xffff8800,0x6fff8804,0x40dfff10,0x67ec3ffe,0x91fffe00,0x37ffc407, 0xfff300d3,0x13ffee0b,0xf105fff1,0xfffc8bff,0x2fffc802,0x7fffdc00, 0xff98001e,0x1007a0ff,0x8800dfff,0x9fc99999,0xff719999,0x3e00005f, 0xf90004ff,0x3e200dff,0x99999fff,0x3a06fffa,0x401f43ff,0x7f717fff, 0x477ffc40,0xff9806fb,0xdfff505f,0x882fff88,0xfdbaefff,0xff9000bf, 0xffd0005f,0x7ec000df,0x100955ff,0xb800dfff,0xffffffff,0xf917ffff, 0x800017df,0x98006ffe,0x1002ffff,0xffffffff,0x40dfffff,0x00f23ffe, 0x7ffffffc,0x3ffe203f,0x9806ffff,0xff305fff,0x7ffc41ff,0xeffff882, 0x000befff,0x0005fff9,0x009ffff3,0x27fffe20,0xfff8800e,0x4c199106, 0xafdaaaaa,0x5c42aaaa,0x5c01dffe,0x17ffec1d,0x17fffa00,0x06fff880, 0x740dfff1,0x400b93ff,0x7fb57fff,0x477ffc40,0xff9806f9,0xffff505f, 0x882fff88,0x3fa25fff,0xffc803ff,0xff90002f,0x320003ff,0x1003ffff, 0x3f60dfff,0x007c807f,0x0beffc98,0x3e63ffdc,0x40aa0fff,0x000ffffb, 0x441bffe2,0x3fa06fff,0x002ffcbf,0x03d8ffff,0x699bffe2,0x05fff980, 0xf88dfff7,0xfff882ff,0x17fff445,0x00bfff20,0x3fff7a60,0xfff10006, 0x3fe2001f,0x3ffff06f,0x20007c80,0xb1cffeb8,0xffc81fff,0xf104ddff, 0x15407fff,0x441bffe2,0x3fa06fff,0x00efffff,0x1cc7fff8,0x68dfff10, 0x2fffcc18,0x445fffb8,0xff882fff,0x5fffc85f,0x017ffe40,0x3fe23a20, 0xfd0004ff,0x3e2001ff,0xfff706ff,0x0007c807,0x3e6ffb30,0xffff705f, 0x37ffec09,0xfff10760,0x1bffe20d,0xff8cffe8,0x7fff804f,0x3ffe2038, 0xf31261c6,0x3ff60bff,0x17ffc41f,0x542fffc4,0x7e406fff,0x0f4002ff, 0x003ffff7,0x001fffd0,0x081bffe2,0x007c801f,0x0021c400,0xfff50066, 0x207cc03f,0xf106fff8,0x7ff40dff,0x805fff73,0x44007fff,0x1f406fff, 0x2617ffe6,0xff885fff,0x5fff882f,0x405fffc8,0x2002fffc,0x6fffd83d, 0x0fffe800,0x0dfff100,0x07c805a8,0x00000000,0x09ffff10,0x7fc43f4c, 0xdfff307f,0xfb27ffc0,0x3fe201ff,0x7fc4007f,0x50bee07f,0xffb0bfff, 0x5fff101d,0x88bfff10,0x6401fffe,0xb9003fff,0x13fffe20,0x01ffff00, 0x81bffe20,0x029801d8,0x00000000,0x81dfff90,0x987ffc98,0xff507fff, 0x2fffc0ff,0x260bfff3,0x2000ffff,0x4c1ffff9,0x7fdc1ffc,0x13ff666f, 0x983fff98,0xfd30ffff,0xffb005ff,0x07f9009f,0x017fffe4,0x003ffff0, 0x4c1fffe6,0x0000000c,0x4c000000,0xffffffff,0x26ffffff,0xeffffeb8, 0xfffec98b,0xffb10bdf,0x3ffea7ff,0xffd710ef,0x4c017dff,0xffffffeb, 0x267fffff,0xfffffffc,0x3a600bde,0xd932ffff,0xdfffffff,0xffb5007b, 0xd7059fff,0xfc839fff,0x205fffff,0xeffffeb9,0xffd7302b,0x00417bff, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x00000000,0x66dc4000,0x76dc40ca,0xcccb80ac, 0x9999974c,0xccb93326,0x99931ccc,0x47333223,0x0044ccca,0xbedb8800, 0x0cedb801,0xccccccb8,0x333323cc,0x3223b912,0x5bb72ccc,0x5cb33320, 0x1eedc3dd,0x6666664c,0x0003ccc9,0x00000000,0x44441791,0x88888888, 0x1df30088,0x5fdc3fd5,0xe885ffa8,0xffd10fff,0x3a20fb8f,0x1fcc3fff, 0xfd8fffea,0x005fdc7f,0xd8bfe980,0x13fd104f,0x9aee81df,0x222fffd9, 0xffe8cfff,0x373ffe65,0xf882fffe,0xfffeddff,0x3fffee8c,0x2e7fffa8, 0x00fe402f,0x7e403f70,0xe987ba65,0xb9bffa1e,0xffffffff,0xf907ffff, 0xff98fc49,0x2a0fffa1,0x3fea2fff,0x3e60ea1f,0xf834c3ff,0x1ffee3ff, 0x005bffb3,0x3fe27fe8,0x3f25fe83,0xfff10745,0x9bbffd0b,0xffff89ff, 0x3a0dff91,0xfff32fff,0x41bfee3d,0x05d2fffb,0x22007fd0,0xfff105ff, 0xfd97ff63,0x3ffff15f,0x2eeeeee6,0x03bbbbbb,0xb8dc7ffd,0x13ff65ff, 0xff927ff4,0xfd806c9f,0xff81646f,0x41ffee3f,0x00beffc9,0x3fe2ffdc, 0xb8ffee0f,0xffb0e1ff,0x5fffb03f,0x93ffa0a2,0xffd07ffb,0x51fffc49, 0x7ff40fff,0xfc8604ae,0x77e40111,0x1fff882f,0x7fecbffb,0x00bffee4, 0x3fff2000,0xd17f440d,0x3fee09ff,0x2dff9d0f,0x3ffea058,0x3fff81a1, 0x2a01ffee,0xfd01dffe,0x22fff89f,0x3fee1ffd,0x09fff502,0x3a01fff6, 0x1ffea4ff,0xff127ff4,0x07ffcc5f,0x206fffa8,0xf768affb,0xf1bf101f, 0xfb9ffe0d,0x10bfee3f,0x222221f1,0x88888888,0xffff3008,0x7f75401d, 0x5fff104f,0x73fff373,0x55ffe805,0x71fffc07,0x64c00fff,0x3fe0beff, 0xd27ff44f,0xddddddff,0x03fffa07,0x74037fec,0x1ffea4ff,0x3fe27ff4, 0x03ffe62f,0x2607ffe8,0xffddcfff,0x3ee1fb06,0x3e65fd83,0x203fe61f, 0x3fffee5a,0xffffffff,0x3fffee07,0x6c77541f,0x3ff604ff,0xb9ffd0cd, 0x8fffb801,0x8fffe00d,0x88007ffb,0x3ffe7ffc,0xff2fff44,0x7fe4007f, 0x13ff602f,0xfa93ffa0,0x89ffd07f,0x3fe62fff,0x3ffea00f,0x56e4cc03, 0xe89f3009,0x3e1fdc0f,0x1d886f87,0x2eeeeee6,0x03bbbbbb,0x927fffcc, 0x13ff61ff,0x2e5fffa8,0xf8805fff,0x7fc05dff,0x01ffee3f,0x45bffb50, 0x7ffc3ffe,0x401bff64,0x6c05fff8,0xffe804ff,0x741ffea4,0x17ffc4ff, 0x4401fff3,0x2200ffff,0x3a02f8ed,0x2227d40f,0x26c2ec1f,0x00000326, 0x5bff6238,0x3ff64ff9,0x11fffc04,0x32005fff,0x7f401fff,0x01ffee3f, 0x033ffae2,0xfff13ff6,0x407ffdc5,0x10fffec0,0x804ffd87,0x3fea4ffe, 0xf89ffd07,0x3ffe62ff,0x3ffeb600,0x7f4ffa03,0xfd02fb83,0xb83b8681, 0x00000042,0x657fe16c,0xbffd36ff,0x6c0ffc80,0x3fe6007f,0x24ffe806, 0x32607ffd,0x7cc02eff,0x31bfe25f,0x05c1bfff,0x3c89fff5,0x74027ff4, 0x3ffea4ff,0x224ffe80,0x3fea2fff,0x3f67700f,0x0ff880ff,0x40bb0bf7, 0x000003e9,0xfd800000,0x7fe4bfa1,0x4effddff,0x3ea17e60,0x017ec004, 0x76d77fe4,0x7f540fff,0x3f2001cf,0xb03ff50f,0x85d9ffff,0x3ea0effe, 0x402fffc3,0x3fee5fff,0x25fff81f,0x3ee3fff8,0x267981ff,0x83105fff, 0x0000000a,0x00000000,0x17eeff6c,0x3a67dfd1,0x817401ef,0x03d4001f, 0xf75fffb0,0x3bee1bff,0xdf70000b,0x7e403df9,0x7fe43eff,0x2fffeeff, 0x033ffff6,0x4d7fffec,0x360effff,0xfd8cffff,0xfffaafff,0x9ffb31ef, 0x1bffff91,0x00000000,0x00000000,0x02018860,0x0a018004,0x22000c00, 0x00055001,0x30004c40,0x00000001,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x54400000,0x072e20aa,0x4700b326,0x44088888, 0x88888888,0x00000888,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0xd8000000,0x1bfee2ff,0x39fffff7,0xffff5398,0x3ffe6bff, 0xffffffff,0x0000006f,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0xbfb00000,0x5d07ffec,0x9dfff951,0x3ffea1fb,0x77715fff, 0x77777777,0x00000057,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x7ec00000,0x1cc9ff50,0x22effda8,0x2bbbbbb8,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x20000000, 0x0010222e,0x00000011,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, 0x00000000,0x00000000,0x00000000,0x00000000,0x00000000, }; static signed short stb__times_bold_28_usascii_x[95]={ 0,2,2,0,0,1,1,1,1,0,1,0,0,0, 1,0,0,1,0,0,0,0,0,0,0,0,2,1,0,0,0,1,1,0,0,1,0,0,0,1,0,0,0,0, 0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,0,0,1,-1,0,1,0,0,0,0,0,0,0,0, -1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,2,1,1,0, }; static signed short stb__times_bold_28_usascii_y[95]={ 22,4,4,4,4,4,4,4,4,4,4,6,18,14, 18,4,4,4,4,4,4,5,4,5,4,4,10,10,7,10,7,4,4,4,5,4,5,5,5,4,5,5,5,5, 5,5,5,4,5,4,5,4,5,5,5,5,5,5,5,5,4,5,4,25,4,10,5,10,5,10,4,10,5,4, 4,5,5,10,10,10,10,10,10,10,6,10,10,10,10,10,10,4,4,4,13, }; static unsigned short stb__times_bold_28_usascii_w[95]={ 0,5,10,13,12,23,19,5,8,8,11,14,6,8, 5,8,12,10,12,12,12,12,12,13,12,12,5,6,14,15,14,11,22,18,16,16,18,16,15,19,20,10,13,20, 16,24,18,19,15,19,19,13,16,18,19,26,19,18,17,6,8,6,12,14,6,12,13,11,14,11,11,13,14,7, 8,15,7,21,14,12,13,14,11,8,9,14,13,19,13,13,11,7,3,7,14, }; static unsigned short stb__times_bold_28_usascii_h[95]={ 0,19,10,19,20,19,19,10,24,24,11,15,9,4, 5,19,19,18,18,19,18,18,19,18,19,19,13,17,13,7,13,19,24,18,17,19,17,17,17,19,17,17,18,17, 17,17,18,19,17,23,17,19,17,18,18,18,17,17,17,22,19,22,10,3,5,13,18,13,18,13,18,18,17,18, 24,17,17,12,12,13,18,18,12,13,17,13,13,13,12,18,12,24,24,24,5, }; static unsigned short stb__times_bold_28_usascii_s[95]={ 253,138,218,169,105,183,207,212,30,1,187, 207,229,29,8,244,47,133,144,60,171,196,34,115,21,156,237,200,222,236,72, 144,48,223,116,227,89,72,56,1,19,189,82,222,205,180,96,118,149,71,129, 82,133,48,28,1,150,170,1,98,73,91,199,38,1,10,119,243,104,100,184, 157,165,96,39,40,108,151,136,87,242,67,124,1,243,57,43,23,173,209,112, 22,18,10,14, }; static unsigned short stb__times_bold_28_usascii_t[95]={ 1,1,83,1,1,1,1,83,1,1,83, 65,83,97,97,1,26,26,26,26,26,26,26,45,26,1,65,65,65,83,83, 1,1,26,65,1,65,65,65,26,65,65,46,45,45,45,45,1,45,1,45, 26,65,46,46,46,65,65,65,1,26,1,83,97,97,83,26,65,26,83,26, 26,45,26,1,65,65,83,83,83,26,46,83,83,45,83,83,83,83,26,83, 1,1,1,97, }; static unsigned short stb__times_bold_28_usascii_a[95]={ 101,135,225,202,202,405,337,112, 135,135,202,231,101,135,101,112,202,202,202,202,202,202,202,202, 202,202,135,135,231,231,231,202,376,292,270,292,292,270,247,315, 315,157,202,315,270,382,292,315,247,315,292,225,270,292,292,405, 292,292,270,135,112,135,235,202,135,202,225,180,225,180,135,202, 225,112,135,225,112,337,225,202,225,225,180,157,135,225,202,292, 202,202,180,159,89,159,210, }; // Call this function with // font: NULL or array length // data: NULL or specified size // height: STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT or STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT_POW2 // return value: spacing between lines static void stb_font_times_bold_28_usascii(stb_fontchar font[STB_FONT_times_bold_28_usascii_NUM_CHARS], unsigned char data[STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT][STB_FONT_times_bold_28_usascii_BITMAP_WIDTH], int height) { int i,j; if (data != 0) { unsigned int *bits = stb__times_bold_28_usascii_pixels; unsigned int bitpack = *bits++, numbits = 32; for (i=0; i < STB_FONT_times_bold_28_usascii_BITMAP_WIDTH*height; ++i) data[0][i] = 0; // zero entire bitmap for (j=1; j < STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT-1; ++j) { for (i=1; i < STB_FONT_times_bold_28_usascii_BITMAP_WIDTH-1; ++i) { unsigned int value; if (numbits==0) bitpack = *bits++, numbits=32; value = bitpack & 1; bitpack >>= 1, --numbits; if (value) { if (numbits < 3) bitpack = *bits++, numbits = 32; data[j][i] = (bitpack & 7) * 0x20 + 0x1f; bitpack >>= 3, numbits -= 3; } else { data[j][i] = 0; } } } } // build font description if (font != 0) { float recip_width = 1.0f / STB_FONT_times_bold_28_usascii_BITMAP_WIDTH; float recip_height = 1.0f / height; for (i=0; i < STB_FONT_times_bold_28_usascii_NUM_CHARS; ++i) { // pad characters so they bilerp from empty space around each character font[i].s0 = (stb__times_bold_28_usascii_s[i]) * recip_width; font[i].t0 = (stb__times_bold_28_usascii_t[i]) * recip_height; font[i].s1 = (stb__times_bold_28_usascii_s[i] + stb__times_bold_28_usascii_w[i]) * recip_width; font[i].t1 = (stb__times_bold_28_usascii_t[i] + stb__times_bold_28_usascii_h[i]) * recip_height; font[i].x0 = stb__times_bold_28_usascii_x[i]; font[i].y0 = stb__times_bold_28_usascii_y[i]; font[i].x1 = stb__times_bold_28_usascii_x[i] + stb__times_bold_28_usascii_w[i]; font[i].y1 = stb__times_bold_28_usascii_y[i] + stb__times_bold_28_usascii_h[i]; font[i].advance_int = (stb__times_bold_28_usascii_a[i]+8)>>4; font[i].s0f = (stb__times_bold_28_usascii_s[i] - 0.5f) * recip_width; font[i].t0f = (stb__times_bold_28_usascii_t[i] - 0.5f) * recip_height; font[i].s1f = (stb__times_bold_28_usascii_s[i] + stb__times_bold_28_usascii_w[i] + 0.5f) * recip_width; font[i].t1f = (stb__times_bold_28_usascii_t[i] + stb__times_bold_28_usascii_h[i] + 0.5f) * recip_height; font[i].x0f = stb__times_bold_28_usascii_x[i] - 0.5f; font[i].y0f = stb__times_bold_28_usascii_y[i] - 0.5f; font[i].x1f = stb__times_bold_28_usascii_x[i] + stb__times_bold_28_usascii_w[i] + 0.5f; font[i].y1f = stb__times_bold_28_usascii_y[i] + stb__times_bold_28_usascii_h[i] + 0.5f; font[i].advance = stb__times_bold_28_usascii_a[i]/16.0f; } } } #ifndef STB_SOMEFONT_CREATE #define STB_SOMEFONT_CREATE stb_font_times_bold_28_usascii #define STB_SOMEFONT_BITMAP_WIDTH STB_FONT_times_bold_28_usascii_BITMAP_WIDTH #define STB_SOMEFONT_BITMAP_HEIGHT STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT #define STB_SOMEFONT_BITMAP_HEIGHT_POW2 STB_FONT_times_bold_28_usascii_BITMAP_HEIGHT_POW2 #define STB_SOMEFONT_FIRST_CHAR STB_FONT_times_bold_28_usascii_FIRST_CHAR #define STB_SOMEFONT_NUM_CHARS STB_FONT_times_bold_28_usascii_NUM_CHARS #define STB_SOMEFONT_LINE_SPACING STB_FONT_times_bold_28_usascii_LINE_SPACING #endif