int LuaFonts::WrapText(lua_State* L) { CglFont* font = tofont(L, 1); string text(luaL_checkstring(L, 2),lua_strlen(L, 2)); const float maxWidth = luaL_checkfloat(L, 3); const float maxHeight = luaL_optfloat(L, 4, 1e9); const float size = luaL_optfloat(L, 5, font->GetSize()); const int lines = font->WrapInPlace(text,size,maxWidth,maxHeight); lua_pushsstring(L, text); lua_pushnumber(L, lines); return 2; }
int LuaFonts::WrapText(lua_State* L) { CglFont* font = tofont(L, 1); const int args = lua_gettop(L); // number of arguments if ((args < 3) || !lua_isstring(L, 2) || !lua_isnumber(L, 3)) { luaL_error(L, "Incorrect arguments to font:WrapText(\"text\", maxWidth, [maxHeight], [size])"); } string text(lua_tostring(L, 2),lua_strlen(L, 2)); const float maxWidth = lua_tonumber(L, 3); const float maxHeight = luaL_optfloat(L, 4, 1e9); const float size = luaL_optfloat(L, 5, font->GetSize()); const int lines = font->WrapInPlace(text,size,maxWidth,maxHeight); lua_pushlstring(L, text.c_str(), text.length()); lua_pushnumber(L, lines); return 2; }