[librsvg: 5/12] Use From trait implementations for conversion between Pixbuf and Cairo pixels
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg: 5/12] Use From trait implementations for conversion between Pixbuf and Cairo pixels
- Date: Tue, 13 Oct 2020 14:03:23 +0000 (UTC)
commit 07aefc511393780cc19ef5d11bb18db08ca5592b
Author: Sven Neumann <sven svenfoo org>
Date: Sun Oct 11 14:40:10 2020 +0200
Use From trait implementations for conversion between Pixbuf and Cairo pixels
rsvg_internals/src/surface_utils/shared_surface.rs | 19 ++++---------------
1 file changed, 4 insertions(+), 15 deletions(-)
---
diff --git a/rsvg_internals/src/surface_utils/shared_surface.rs
b/rsvg_internals/src/surface_utils/shared_surface.rs
index 6103daba..3fb47266 100644
--- a/rsvg_internals/src/surface_utils/shared_surface.rs
+++ b/rsvg_internals/src/surface_utils/shared_surface.rs
@@ -293,11 +293,7 @@ impl ImageSurface<Shared> {
let pixbuf_row: &[Pixel] = pixbuf_row.as_rgba();
for (src, dest) in pixbuf_row.iter().zip(surf_row.iter_mut()) {
- let pixel = src.premultiply();
- dest.r = pixel.r;
- dest.g = pixel.g;
- dest.b = pixel.b;
- dest.a = pixel.a;
+ *dest = src.premultiply().into();
}
}
} else {
@@ -305,21 +301,14 @@ impl ImageSurface<Shared> {
let pixbuf_row: &[RGB8] = pixbuf_row.as_rgb();
for (src, dest) in pixbuf_row.iter().zip(surf_row.iter_mut()) {
- dest.r = src.r;
- dest.g = src.g;
- dest.b = src.b;
- dest.a = 0xff;
+ *dest = src.alpha(0xff).into();
}
}
}
}
- match (data, content_type) {
- (Some(bytes), Some(content_type)) => {
- surf.surface.set_mime_data(content_type, bytes)?;
- }
-
- (_, _) => (),
+ if let (Some(bytes), Some(content_type)) = (data, content_type) {
+ surf.surface.set_mime_data(content_type, bytes)?;
}
surf.share()
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]