mirror of
https://github.com/Drezil/imgui.git
synced 2025-02-22 00:22:43 +00:00
Fonts: Fixed CalcTextSize() width rounding so it behaves more like a ceil. (#3776)
his is in order for text wrapping to have enough space when provided width precisely calculated with CalcTextSize().x. Amend 7b0bf230. Note that the rounding of either positions and widths are technically undesirable (e.g. #3437, #791) but variety of code is currently on it so we are first fixing current behavior before we'll eventually change it.
This commit is contained in:
parent
9499afdf5e
commit
4622fa4b66
@ -53,6 +53,10 @@ Other Changes:
|
||||
other than compiling misc/freetype/imgui_freetype.cpp and linking with FreeType.
|
||||
- Use '#define IMGUI_ENABLE_STB_TRUETYPE' if you somehow need the stb_truetype rasterizer to be
|
||||
compiled in along with the FreeType one, otherwise it is enabled by default.
|
||||
- Fonts: Fixed CalcTextSize() width rounding so it behaves more like a ceil. This is in order for text wrapping
|
||||
to have enough space when provided width precisely calculated with CalcTextSize().x. (#3776)
|
||||
Note that the rounding of either positions and widths are technically undesirable (e.g. #3437, #791) but
|
||||
variety of code is currently on it so we are first fixing current behavior before we'll eventually chhnge it.
|
||||
- ImDrawList: Fixed AddCircle()/AddCircleFilled() with (rad > 0.0f && rad < 1.0f && num_segments == 0). (#3738)
|
||||
Would lead to a buffer read overflow.
|
||||
- Backends: Win32: Dynamically loading XInput DLL instead of linking with it, facilite compiling with
|
||||
|
@ -4410,7 +4410,11 @@ ImVec2 ImGui::CalcTextSize(const char* text, const char* text_end, bool hide_tex
|
||||
ImVec2 text_size = font->CalcTextSizeA(font_size, FLT_MAX, wrap_width, text, text_display_end, NULL);
|
||||
|
||||
// Round
|
||||
text_size.x = IM_FLOOR(text_size.x + 0.95f);
|
||||
// FIXME: This has been here since Dec 2015 (7b0bf230) but down the line we want this out.
|
||||
// FIXME: Investigate using ceilf or e.g.
|
||||
// - https://git.musl-libc.org/cgit/musl/tree/src/math/ceilf.c
|
||||
// - https://embarkstudios.github.io/rust-gpu/api/src/libm/math/ceilf.rs.html
|
||||
text_size.x = IM_FLOOR(text_size.x + 0.99999f);
|
||||
|
||||
return text_size;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user