diff options
author | 2024-08-04 03:28:43 +0200 | |
---|---|---|
committer | 2024-08-04 03:28:43 +0200 | |
commit | 0ceee1cf3ae49f5bd0e3f2b346a4b34076e4523a (patch) | |
tree | c44e036220ea40734a00bb8e05e4afa6a9504bea /tiny_skia/src/lib.rs | |
parent | 87a613edd186461f1a8d224394043527a372571c (diff) | |
download | iced-0ceee1cf3ae49f5bd0e3f2b346a4b34076e4523a.tar.gz iced-0ceee1cf3ae49f5bd0e3f2b346a4b34076e4523a.tar.bz2 iced-0ceee1cf3ae49f5bd0e3f2b346a4b34076e4523a.zip |
Implement image support for `canvas` widget
Diffstat (limited to '')
-rw-r--r-- | tiny_skia/src/lib.rs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/tiny_skia/src/lib.rs b/tiny_skia/src/lib.rs index 6ec60158..f09e5aa3 100644 --- a/tiny_skia/src/lib.rs +++ b/tiny_skia/src/lib.rs @@ -330,6 +330,7 @@ impl graphics::geometry::Renderer for Renderer { match geometry { Geometry::Live { primitives, + images, text, clip_bounds, } => { @@ -339,6 +340,10 @@ impl graphics::geometry::Renderer for Renderer { transformation, ); + for image in images { + layer.draw_image(&image, transformation); + } + layer.draw_text_group(text, clip_bounds, transformation); } Geometry::Cache(cache) => { @@ -348,6 +353,10 @@ impl graphics::geometry::Renderer for Renderer { transformation, ); + for image in cache.images.iter() { + layer.draw_image(image, transformation); + } + layer.draw_text_cache( cache.text, cache.clip_bounds, @@ -381,7 +390,7 @@ impl core::image::Renderer for Renderer { opacity: f32, ) { let (layer, transformation) = self.layers.current_mut(); - layer.draw_image( + layer.draw_raster( handle, filter_method, bounds, |