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;
    }
}
Exemple #2
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;
    }
}