FontDefinitionTTF* FontDefinitionTTF::create(Font *font, int textureSize) { if (textureSize == 0) textureSize = DEFAUL_ATLAS_TEXTURE_SIZE; FontDefinitionTTF *ret = new FontDefinitionTTF; if (!ret) return 0; const char *glyph = font->getCurrentGlyphCollection(); if (!glyph) return nullptr; if (ret->initDefinition(font, glyph, textureSize)) { ret->autorelease(); return ret; } else { delete ret; return 0; } }
FontAtlas * FontFreeType::createFontAtlas() { FontDefinitionTTF *def = FontDefinitionTTF::create(this); if (!def) return nullptr; FontAtlas *atlas = def->createFontAtlas(); // release the font definition, we don't need it anymore def->release(); return atlas; }
FontDefinitionTTF* FontDefinitionTTF::create(const char *fontName, int fontSize, const char *letters, int textureSize ) { FontDefinitionTTF *ret = new FontDefinitionTTF; if(!ret) return 0; if ( ret->initDefinition( fontName, fontSize, letters, textureSize ) ) { return ret; } else { delete ret; return 0; } }