/* Free font record */ static void freeFonts(tcCtx g) { tcprivCtx h = g->ctx.tcpriv; int i; /* Free font data */ for (i = 0; i < h->set.cnt; i++) { Font *font = &h->set.array[i]; MEM_FREE(g, font->FontName); dnaFREE(font->dict); dnaFREE(font->Private); csFreeFont(g, font); if (font->flags & FONT_CID) { int fdCount = font->fdCount; int fd; if (font->fdInfo) { for (fd = 0; fd < fdCount; fd++) { dnaFREE(font->fdInfo[fd].FD); dnaFREE(font->fdInfo[fd].Private); } MEM_FREE(g, font->fdInfo); } MEM_FREE(g, font->fdIndex); } MEM_FREE(g, font->chameleon.data); (void)fontInit(g, 1, font); /* Prepare to reuse */ } h->set.cnt = 0; }
void AppearanceDialog::on_buttonFontDefaults_clicked() { (*fontMap) = Config()->defaultFonts; isInit = true; fontInit(); isInit = false; Config()->emitFontsUpdated(); GuiUpdateAllViews(); }
void InitEverything() { new ImgBase(); randInit(); fontInit(); screen = InitScreen(); SDL_WM_SetCaption("Xombie", "Xombie"); }
int fontNew(lua_State *L) { // love.graphics.newFont() if (fontCounter <= fontLimit) { fontCounter += 1; int argc = lua_gettop(L); char *filename = 0; int fontSize = 14; //newFont(fontSize) if( argc == 1){ fontSize = lua_isnoneornil(L, 1) ? NULL : luaL_checkinteger(L, 1); } //newFont(filename, fontsize) if( argc == 2 ) { filename = lua_isnoneornil(L, 1) ? NULL : luaL_checkstring(L, 1); fontSize = lua_isnoneornil(L, 2) ? NULL : luaL_checkinteger(L, 2); } love_font *self = luaobj_newudata(L, sizeof(*self)); luaobj_setclass(L, CLASS_TYPE, CLASS_NAME); if (filename) { const char *error = fontInit(self, filename, fontSize); if (error) luaError(L, error); } else { fontDefaultInit(self, fontSize); } return 1; } else { luaError(L, "LovePotion currently has a 2 font limit. This limitation will hopefully be lifted in future versions."); return 0; } }
void loadText() { fontInit(20,0); width = 1024,height = 1024; int x = 0,y = 0,maxy = 0; unsigned char *lol = new unsigned char[width * height]; memset(lol,0,width * height); for (int i = 32;i< 128;i++) { loadGlyph(i); int w = glyphs[i -32]->bitmap.width; int h = glyphs[i -32]->bitmap.rows; maxy = maxy > h ? maxy : h; if ((x + w) > width) y+= maxy + 3,x = 0,maxy = 0; glyphsPos[i -32].x = x; glyphsPos[i -32].y = y; for (int l = 0;l<h;l++) memcpy(lol + (l +y)*width + x,glyphs[i -32]->bitmap.buffer + l * w,w); x+=w + 3; } glActiveTexture(GL_TEXTURE1); GLuint texttext;; glGenTextures(1,&texttext); glBindTexture(GL_TEXTURE_2D,texttext); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MAG_FILTER,GL_LINEAR); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_MIN_FILTER,GL_LINEAR); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP); glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_CLAMP); glTexImage2D(GL_TEXTURE_2D,0,GL_ALPHA,width,height,0,GL_ALPHA,GL_UNSIGNED_BYTE,lol ); glUniform1i(TextUniform,1); }
AppearanceDialog::AppearanceDialog(QWidget* parent) : QDialog(parent), ui(new Ui::AppearanceDialog) { ui->setupUi(this); //set window flags setModal(true); setWindowFlags(windowFlags() & ~Qt::WindowContextHelpButtonHint | Qt::MSWindowsFixedSizeDialogHint); //Colors colorMap = &Config()->Colors; colorBackupMap = *colorMap; ui->groupColor->setEnabled(false); ui->groupBackgroundColor->setEnabled(false); colorInfoListInit(); //Fonts fontMap = &Config()->Fonts; fontBackupMap = *fontMap; fontInit(); connect(this, SIGNAL(rejected()), this, SLOT(rejectedSlot())); }
int main(int argc __attribute__((unused)), char *argv[]) { /* init allegro library */ ALLEGRO_TIMER *timer = NULL; al_init(); /* prepare random number generator */ srand(time(NULL)); /* activate all engine subsystems using the startup macro */ resetCollisionTable(); STARTUP(videoInit()) STARTUP(init_datafile(argv)) STARTUP(al_install_keyboard()) STARTUP(al_install_joystick()) STARTUP(fontInit()) STARTUP(setupSound()) timer = al_create_timer(1.0 / 60); al_start_timer(timer); initMediaLib(); initBuffers(); /* prepare game */ startGame(); /* begin game loop */ while(!state.terminate) { runState(timer); } /* finish, return control to os */ al_destroy_timer(timer); shutdownState(); shutdownGame(); videoKill(); shutdownSound(); al_uninstall_system(); PHYSFS_deinit(); /* no problems, exit false */ return EXIT_SUCCESS; }