propertiesView: Use image dimensions from decoder
This also shows the units for SVG dimensions if not pixels. Issue #43 Part-of: <https://gitlab.gnome.org/Incubator/loupe/-/merge_requests/136>
This commit is contained in:
parent
490a46d7c4
commit
42d558d22f
9 changed files with 101 additions and 265 deletions
|
|
@ -33,3 +33,10 @@ impl std::fmt::Display for ImageFormat {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
#[derive(Clone, Debug, Default)]
|
||||
pub enum ImageDimensionDetails {
|
||||
Svg((rsvg::Length, rsvg::Length)),
|
||||
#[default]
|
||||
None,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,7 +58,11 @@ impl Svg {
|
|||
|
||||
let (original_width, original_height) = svg_dimensions(&renderer);
|
||||
|
||||
tiles.set_original_dimensions((original_width, original_height));
|
||||
let intrisic_dimensions = renderer.intrinsic_dimensions();
|
||||
tiles.set_original_dimensions_full(
|
||||
(original_width, original_height),
|
||||
ImageDimensionDetails::Svg((intrisic_dimensions.width, intrisic_dimensions.height)),
|
||||
);
|
||||
|
||||
loop {
|
||||
let tile_request = {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue