mirror of
https://github.com/nicbarker/clay.git
synced 2025-09-18 04:26:18 +00:00
[Renderers/Sokol] Text measurement/rendering width mismatch in sokol_clay (#480)
This commit is contained in:
parent
61bab7bba6
commit
1bc5105272
|
@ -227,13 +227,14 @@ Clay_Dimensions sclay_measure_text(Clay_StringSlice text, Clay_TextElementConfig
|
||||||
sclay_font_t *fonts = (sclay_font_t *)userData;
|
sclay_font_t *fonts = (sclay_font_t *)userData;
|
||||||
if(!fonts) return (Clay_Dimensions){ 0 };
|
if(!fonts) return (Clay_Dimensions){ 0 };
|
||||||
fonsSetFont(_sclay.fonts, fonts[config->fontId]);
|
fonsSetFont(_sclay.fonts, fonts[config->fontId]);
|
||||||
fonsSetSize(_sclay.fonts, config->fontSize);
|
fonsSetSize(_sclay.fonts, config->fontSize * _sclay.dpi_scale);
|
||||||
fonsSetSpacing(_sclay.fonts, config->letterSpacing);
|
fonsSetSpacing(_sclay.fonts, config->letterSpacing * _sclay.dpi_scale);
|
||||||
|
fonsSetAlign(_sclay.fonts, FONS_ALIGN_LEFT | FONS_ALIGN_TOP);
|
||||||
float ascent, descent, lineh;
|
float ascent, descent, lineh;
|
||||||
fonsVertMetrics(_sclay.fonts, &ascent, &descent, &lineh);
|
fonsVertMetrics(_sclay.fonts, &ascent, &descent, &lineh);
|
||||||
return (Clay_Dimensions) {
|
return (Clay_Dimensions) {
|
||||||
.width = fonsTextBounds(_sclay.fonts, 0, 0, text.chars, text.chars + text.length, NULL),
|
.width = fonsTextBounds(_sclay.fonts, 0, 0, text.chars, text.chars + text.length, NULL) / _sclay.dpi_scale,
|
||||||
.height = ascent - descent
|
.height = (ascent - descent) / _sclay.dpi_scale
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue