Skip to content

Commit 58536c2

Browse files
committed
Add paint.set_font_size
1 parent c82870f commit 58536c2

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

internal/renderers/femtovg/itemrenderer.rs

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ impl<'a, R: femtovg::Renderer + TextureImporter> GLItemRenderer<'a, R> {
198198
fn draw_glyphs<R: femtovg::Renderer + TextureImporter>(
199199
layout: &sharedparley::Layout,
200200
canvas: &mut Canvas<R>,
201-
paint: &femtovg::Paint,
201+
paint: &mut femtovg::Paint,
202202
) {
203203
for line in layout.lines() {
204204
for item in line.items() {
@@ -219,6 +219,8 @@ fn draw_glyphs<R: femtovg::Renderer + TextureImporter>(
219219
}
220220
});
221221

222+
paint.set_font_size(run.font_size());
223+
222224
match brush.stroke {
223225
Some(i_slint_core::items::TextStrokeStyle::Outside) => {
224226
canvas.stroke_glyph_run(font_id, glyphs.clone(), paint).unwrap();
@@ -390,7 +392,7 @@ impl<'a, R: femtovg::Renderer + TextureImporter> ItemRenderer for GLItemRenderer
390392
let font_request = text.font_request(self_rc);
391393

392394
let text_path = rect_to_path((size * self.scale_factor).into());
393-
let paint = match self.brush_to_paint(color, &text_path) {
395+
let mut paint = match self.brush_to_paint(color, &text_path) {
394396
Some(paint) => paint,
395397
None => return,
396398
};
@@ -436,7 +438,7 @@ impl<'a, R: femtovg::Renderer + TextureImporter> ItemRenderer for GLItemRenderer
436438

437439
let mut canvas = self.canvas.borrow_mut();
438440

439-
draw_glyphs(&layout, &mut canvas, &paint);
441+
draw_glyphs(&layout, &mut canvas, &mut paint);
440442
}
441443

442444
fn draw_text_input(
@@ -459,7 +461,7 @@ impl<'a, R: femtovg::Renderer + TextureImporter> ItemRenderer for GLItemRenderer
459461

460462
let visual_representation = text_input.visual_representation(None);
461463

462-
let paint = match self.brush_to_paint(
464+
let mut paint = match self.brush_to_paint(
463465
visual_representation.text_color,
464466
&rect_to_path((size * self.scale_factor).into()),
465467
) {
@@ -522,7 +524,7 @@ impl<'a, R: femtovg::Renderer + TextureImporter> ItemRenderer for GLItemRenderer
522524
);
523525
});
524526

525-
draw_glyphs(&layout, &mut canvas, &paint);
527+
draw_glyphs(&layout, &mut canvas, &mut paint);
526528

527529
if cursor_visible {
528530
let cursor = parley::layout::cursor::Cursor::from_byte_index(
@@ -972,9 +974,9 @@ impl<'a, R: femtovg::Renderer + TextureImporter> ItemRenderer for GLItemRenderer
972974

973975
fn draw_string(&mut self, string: &str, color: Color) {
974976
let layout = sharedparley::layout(string, self.scale_factor, Default::default());
975-
let paint = femtovg::Paint::color(to_femtovg_color(&color));
977+
let mut paint = femtovg::Paint::color(to_femtovg_color(&color));
976978
let mut canvas = self.canvas.borrow_mut();
977-
draw_glyphs(&layout, &mut canvas, &paint);
979+
draw_glyphs(&layout, &mut canvas, &mut paint);
978980
}
979981

980982
fn draw_image_direct(&mut self, image: i_slint_core::graphics::Image) {

0 commit comments

Comments
 (0)