Subversion Repositories Kolibri OS

Rev

Rev 5520 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. // Truetype library
  2. #ifndef INCLUDE_LIBTRUETYPE_H
  3. #define INCLUDE_LIBTRUETYPE_H
  4.  
  5. #ifndef INCLUDE_KOLIBRI_H
  6. #include "../lib/kolibri.h"
  7. #endif
  8.  
  9. #ifndef INCLUDE_DLL_H
  10. #include "../lib/dll.h"
  11. #endif
  12. dword libtruetype = #att_libtruetype;
  13. char att_libtruetype[22] = "/sys/lib/truetype.obj\0";
  14.  
  15. dword truetype = #att_truetype;      // truetype(unsigned char *s, stbtt_fontinfo *buffer, char *screen1, int width, int height)
  16. dword get_length = #att_get_length;  // get_length(unsigned char *s, char *buffer, int height, int max_len)
  17. dword get_width  = #att_get_width;   // get_width_utf8(unsigned char *s, stbtt_fontinfo *buffer, int height)
  18. dword text_out = #att_text_out;      // text_out(unsigned char *string, char *buffer, int height, int color,int back_color, int x, int y)
  19. dword init_font = #att_init_font;    // init_font(stbtt_fontinfo *font,unsigned char *FontData)
  20. dword text_out_mem = #att_text_out_mem; // text_out_mem(unsigned char *string, stbtt_fontinfo *buffer, int height, int color,int back_color)
  21. $DD 2 dup 0
  22.  
  23. char att_truetype[]     = "truetype";
  24. char att_get_length[]   = "get_length";
  25. char att_get_width[]    = "get_width";
  26. char att_text_out[]     = "text_out";
  27. char att_text_out_mem[] = "text_out_mem";
  28. char att_init_font[]    = "init_font";
  29.  
  30. //============================================================
  31. //============================================================
  32.  
  33. char fontinfo[28];
  34.  
  35. struct stbtt_fontinfo
  36. {
  37.         dword userdata;
  38.         dword data;            // pointer to .ttf file
  39.         int fontstart;         // offset of start of font
  40.        
  41.         int numGlyphs;                     // number of glyphs, needed for range checking
  42.        
  43.         int loca,head,glyf,hhea,hmtx,kern; // table locations as offset from start of .ttf
  44.         int index_map;                     // a cmap mapping for our chosen character encoding
  45.         int indexToLocFormat;              // format needed to map from glyph index to glyph
  46. };
  47.  
  48. #endif