
Closes https://github.com/emilk/egui/issues/2068 Before this PR, the default font, Ubuntu-Light, was ~11% smaller than it should have been, and the default monospace font, Hack, was ~14% smaller. This means that setting the font size `12` in egui would yield smaller text than using that font size in any other app. Ooops! The change is that this PR now takes into account the ttf properties `units_per_em` and `height_unscaled`. If your egui application has specified you own font sizes or text styles you will see the text in your application grow larger, unless you go in and compensate by dividing all font sizes by ~1.21 for Ubuntu-Light/Proportional and ~1.16 for Hack/Monospace, and with something else if you are using a custom font! This effects any use of `FontId`, `RichText::size`, etc. This PR changes the default `Style::text_styles` to compensate, so the default egui style should look the same before and after this PR.
4.4 KiB
4.4 KiB
epaint changelog
All notable changes to the epaint crate will be documented in this file.
Unreleased
- ⚠️ BREAKING: Fix text being too small (#2069).
0.19.0 - 2022-08-20
- MSRV (Minimum Supported Rust Version) is now
1.61.0
(#1846). - Added
epaint::hex_color!
to createColor32
's from hex strings under thecolor-hex
feature (#1596). - Optimize tessellation of filled circles by 10x or more (#1616).
- Added opt-in feature
deadlock_detection
to detect double-lock of mutexes on the same thread (#1619).
0.18.1 - 2022-05-01
- Change
Shape::Callback
from&dyn Any
to&mut dyn Any
to support more backends.
0.18.0 - 2022-04-30
- MSRV (Minimum Supported Rust Version) is now
1.60.0
(#1467). - Added
Shape::Callback
for backend-specific painting (#1351). - Added more text wrapping options (#1291):
- Added
TextWrapping
struct containing all wrapping options. - Added
LayoutJob::wrap
field containing these options. - Moved
LayoutJob::wrap_width
toTextWrapping::max_width
. - Added
TextWrapping::max_rows
to limit amount of rows the text should have. - Added
TextWrapping::break_anywhere
to control should the text break at appropriate places or not. - Added
TextWrapping::overflow_character
to specify what character should be used to represent clipped text.
- Added
- Removed the
single_threaded/multi_threaded
flags - epaint is now always thread-safe (#1390). Tessellator::from_options
is nowTessellator::new
(#1408).- Renamed
TessellationOptions::anti_alias
tofeathering
(#1408). - Renamed
AlphaImage
toFontImage
to discourage any other use for it (#1412). - Dark text is darker and more readable on bright backgrounds (#1412).
- Fixed panic when tessellating a
Shape::Vec
containing meshes with differingTextureId
s (#1445). - Added
Shape::galley_with_color
which adds the functionality ofPainter::galley_with_color
into the Shape enum (#1461). - Renamed the feature
convert_bytemuck
tobytemuck
(#1467). - Renamed the feature
serialize
toserde
(#1467). - Added line breaking rules for Japanese text (#1498).
- Optimize tessellation of circles and boxes with rounded corners (#1547).
0.17.0 - 2022-02-22
- Much improved font selection (#1154):
- Replaced
TextStyle
withFontId
which lets you pick any font size and font family. - Replaced
Fonts::font_image
withfont_image_delta
for partial font atlas updates.
- Replaced
- Made the v-align and scale of user fonts tweakable (#1241).
- Added
ImageData
andTextureManager
for loading images into textures (#1110). - Added
Shape::dashed_line_many
(#1027). - Replaced
corner_radius: f32
withrounding: Rounding
, allowing per-corner rounding settings (#1206). - Fixed anti-aliasing of filled paths with counter-clockwise winding order.
- Improve the anti-aliasing of filled paths with sharp corners, at the cost of these corners sometimes becoming badly extruded instead (see https://github.com/emilk/egui/issues/1226).
0.16.0 - 2021-12-29
0.15.0 - 2021-10-24
Fonts::layout_job
: New text layout engine allowing mixing fonts, colors and styles, with underlining and strikethrough.- New
CircleShape
,PathShape
,RectShape
andTextShape
used inenum Shape
. - Added support for rotated text (see
TextShape
). - Added
"convert_bytemuck"
feature.