diff options
Diffstat (limited to 'wgpu/src/renderer/widget/text.rs')
-rw-r--r-- | wgpu/src/renderer/widget/text.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/wgpu/src/renderer/widget/text.rs b/wgpu/src/renderer/widget/text.rs index 33e549cd..80bff574 100644 --- a/wgpu/src/renderer/widget/text.rs +++ b/wgpu/src/renderer/widget/text.rs @@ -31,11 +31,23 @@ impl text::Renderer for Renderer { horizontal_alignment: HorizontalAlignment, vertical_alignment: VerticalAlignment, ) -> Self::Output { + let x = match horizontal_alignment { + iced_native::HorizontalAlignment::Left => bounds.x, + iced_native::HorizontalAlignment::Center => bounds.center_x(), + iced_native::HorizontalAlignment::Right => bounds.x + bounds.width, + }; + + let y = match vertical_alignment { + iced_native::VerticalAlignment::Top => bounds.y, + iced_native::VerticalAlignment::Center => bounds.center_y(), + iced_native::VerticalAlignment::Bottom => bounds.y + bounds.height, + }; + ( Primitive::Text { content: content.to_string(), size: f32::from(size), - bounds, + bounds: Rectangle { x, y, ..bounds }, color: color.unwrap_or(defaults.text.color), font, horizontal_alignment, |