mirror of https://github.com/bjornbytes/lovr.git
Adjust;
This commit is contained in:
parent
b7e5bd1d67
commit
dd8d8fe67e
|
@ -99,9 +99,9 @@ static int l_lovrRasterizerGetBearing(lua_State* L) {
|
|||
|
||||
static int l_lovrRasterizerGetKerning(lua_State* L) {
|
||||
Rasterizer* rasterizer = luax_checktype(L, 1, Rasterizer);
|
||||
uint32_t prev = luax_checkcodepoint(L, 2);
|
||||
uint32_t next = luax_checkcodepoint(L, 3);
|
||||
float kerning = lovrRasterizerGetKerning(rasterizer, prev, next);
|
||||
uint32_t first = luax_checkcodepoint(L, 2);
|
||||
uint32_t second = luax_checkcodepoint(L, 3);
|
||||
float kerning = lovrRasterizerGetKerning(rasterizer, first, second);
|
||||
lua_pushnumber(L, kerning);
|
||||
return 1;
|
||||
}
|
||||
|
|
|
@ -497,7 +497,7 @@ static Canvas luax_checkcanvas(lua_State* L, int index) {
|
|||
canvas.samples = lua_isnil(L, -1) ? canvas.samples : lua_tointeger(L, -1);
|
||||
lua_pop(L, 1);
|
||||
|
||||
lua_getfield(L, index, "mipmaps");
|
||||
lua_getfield(L, index, "mipmap");
|
||||
canvas.mipmap = lua_toboolean(L, -1);
|
||||
lua_pop(L, 1);
|
||||
}
|
||||
|
@ -1258,11 +1258,11 @@ static int l_lovrGraphicsNewFont(lua_State* L) {
|
|||
float size;
|
||||
|
||||
if (lua_type(L, 1) == LUA_TNUMBER || lua_isnoneornil(L, 1)) {
|
||||
size = luax_optfloat(L, 1, 32.f);
|
||||
size = luax_optfloat(L, 1, 32.);
|
||||
info.spread = luaL_optnumber(L, 2, info.spread);
|
||||
} else {
|
||||
blob = luax_readblob(L, 1, "Font");
|
||||
size = luax_optfloat(L, 2, 32.f);
|
||||
size = luax_optfloat(L, 2, 32.);
|
||||
info.spread = luaL_optnumber(L, 3, info.spread);
|
||||
}
|
||||
|
||||
|
|
|
@ -91,9 +91,9 @@ static int l_lovrFontGetHeight(lua_State* L) {
|
|||
|
||||
static int l_lovrFontGetKerning(lua_State* L) {
|
||||
Font* font = luax_checktype(L, 1, Font);
|
||||
uint32_t left = luax_checkcodepoint(L, 2);
|
||||
uint32_t right = luax_checkcodepoint(L, 3);
|
||||
float kerning = lovrFontGetKerning(font, left, right);
|
||||
uint32_t first = luax_checkcodepoint(L, 2);
|
||||
uint32_t second = luax_checkcodepoint(L, 3);
|
||||
float kerning = lovrFontGetKerning(font, first, second);
|
||||
float density = lovrFontGetPixelDensity(font);
|
||||
lua_pushnumber(L, kerning / density);
|
||||
return 1;
|
||||
|
|
|
@ -103,8 +103,8 @@ float lovrRasterizerGetBearing(Rasterizer* rasterizer, uint32_t codepoint) {
|
|||
return bearing * rasterizer->scale;
|
||||
}
|
||||
|
||||
float lovrRasterizerGetKerning(Rasterizer* rasterizer, uint32_t left, uint32_t right) {
|
||||
return stbtt_GetCodepointKernAdvance(&rasterizer->font, left, right) * rasterizer->scale;
|
||||
float lovrRasterizerGetKerning(Rasterizer* rasterizer, uint32_t first, uint32_t second) {
|
||||
return stbtt_GetCodepointKernAdvance(&rasterizer->font, first, second) * rasterizer->scale;
|
||||
}
|
||||
|
||||
void lovrRasterizerGetBoundingBox(Rasterizer* rasterizer, float box[4]) {
|
||||
|
|
|
@ -20,7 +20,7 @@ float lovrRasterizerGetDescent(Rasterizer* rasterizer);
|
|||
float lovrRasterizerGetLeading(Rasterizer* rasterizer);
|
||||
float lovrRasterizerGetAdvance(Rasterizer* rasterizer, uint32_t codepoint);
|
||||
float lovrRasterizerGetBearing(Rasterizer* rasterizer, uint32_t codepoint);
|
||||
float lovrRasterizerGetKerning(Rasterizer* rasterizer, uint32_t left, uint32_t right);
|
||||
float lovrRasterizerGetKerning(Rasterizer* rasterizer, uint32_t first, uint32_t second);
|
||||
void lovrRasterizerGetBoundingBox(Rasterizer* rasterizer, float box[4]);
|
||||
void lovrRasterizerGetGlyphBoundingBox(Rasterizer* rasterizer, uint32_t codepoint, float box[4]);
|
||||
bool lovrRasterizerGetCurves(Rasterizer* rasterizer, uint32_t codepoint, void (*fn)(void* context, uint32_t degree, float* points), void* context);
|
||||
|
|
|
@ -2086,13 +2086,13 @@ static Glyph* lovrFontGetGlyph(Font* font, uint32_t codepoint, bool* resized) {
|
|||
return glyph;
|
||||
}
|
||||
|
||||
float lovrFontGetKerning(Font* font, uint32_t left, uint32_t right) {
|
||||
uint32_t codepoints[] = { left, right };
|
||||
float lovrFontGetKerning(Font* font, uint32_t first, uint32_t second) {
|
||||
uint32_t codepoints[] = { first, second };
|
||||
uint64_t hash = hash64(codepoints, sizeof(codepoints));
|
||||
union { float f32; uint64_t u64; } kerning = { .u64 = map_get(&font->kerning, hash) };
|
||||
|
||||
if (kerning.u64 == MAP_NIL) {
|
||||
kerning.f32 = lovrRasterizerGetKerning(font->info.rasterizer, left, right);
|
||||
kerning.f32 = lovrRasterizerGetKerning(font->info.rasterizer, first, second);
|
||||
map_set(&font->kerning, hash, kerning.u64);
|
||||
}
|
||||
|
||||
|
|
|
@ -360,7 +360,7 @@ float lovrFontGetPixelDensity(Font* font);
|
|||
void lovrFontSetPixelDensity(Font* font, float pixelDensity);
|
||||
float lovrFontGetLineSpacing(Font* font);
|
||||
void lovrFontSetLineSpacing(Font* font, float spacing);
|
||||
float lovrFontGetKerning(Font* font, uint32_t left, uint32_t right);
|
||||
float lovrFontGetKerning(Font* font, uint32_t first, uint32_t second);
|
||||
float lovrFontGetWidth(Font* font, ColoredString* strings, uint32_t count);
|
||||
void lovrFontGetLines(Font* font, ColoredString* strings, uint32_t count, float wrap, void (*callback)(void* context, const char* string, size_t length), void* context);
|
||||
|
||||
|
|
Loading…
Reference in New Issue