diff --git a/Cargo.lock b/Cargo.lock index 885ac432..1e362fdc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2126,7 +2126,7 @@ dependencies = [ "smart-debug", "syntect", "tempfile", - "tiny-skia 0.9.1", + "tiny-skia 0.10.0", "toml 0.7.8", "two-face", "usvg", @@ -3576,9 +3576,9 @@ dependencies = [ [[package]] name = "resvg" -version = "0.33.0" +version = "0.34.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1df5f3de3bb51d8a4766a1ef5d85851f2737716dea899516248d25e313a51b0d" +checksum = "b0e3d65cea36eefb28a020edb6e66341764e00cd4b426e0c1f0599b1adaa78f5" dependencies = [ "gif", "jpeg-decoder", @@ -3586,9 +3586,8 @@ dependencies = [ "pico-args", "png", "rgb", - "svgfilters", "svgtypes", - "tiny-skia 0.9.1", + "tiny-skia 0.10.0", "usvg", ] @@ -3607,19 +3606,6 @@ dependencies = [ "bytemuck", ] -[[package]] -name = "rosvgtree" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad747e7384940e7bf33b15ba433b7bad9f44c0c6d5287a67c2cb22cd1743d497" -dependencies = [ - "log", - "roxmltree", - "simplecss", - "siphasher", - "svgtypes", -] - [[package]] name = "roxmltree" version = "0.18.1" @@ -4103,16 +4089,6 @@ version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" -[[package]] -name = "svgfilters" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "639abcebc15fdc2df179f37d6f5463d660c1c79cd552c12343a4600827a04bce" -dependencies = [ - "float-cmp", - "rgb", -] - [[package]] name = "svgtypes" version = "0.11.0" @@ -4297,9 +4273,9 @@ dependencies = [ [[package]] name = "tiny-skia" -version = "0.9.1" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce2986c82f77818c7b9144c70818fdde98db15308e329ae2f7204d767808fd3c" +checksum = "7db11798945fa5c3e5490c794ccca7c6de86d3afdd54b4eb324109939c6f37bc" dependencies = [ "arrayref", "arrayvec", @@ -4307,7 +4283,7 @@ dependencies = [ "cfg-if", "log", "png", - "tiny-skia-path 0.9.0", + "tiny-skia-path 0.10.0", ] [[package]] @@ -4323,9 +4299,9 @@ dependencies = [ [[package]] name = "tiny-skia-path" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7acb0ccda1ac91084353a56d0b69b0e29c311fd809d2088b1ed2f9ae1841c47" +checksum = "2f60aa35c89ac2687ace1a2556eaaea68e8c0d47408a2e3e7f5c98a489e7281c" dependencies = [ "arrayref", "bytemuck", @@ -4633,9 +4609,9 @@ dependencies = [ [[package]] name = "usvg" -version = "0.33.0" +version = "0.34.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae32eb823aab35fc343b19c4d354f70e713b442ce34cdfa8497bf6c39af8a342" +checksum = "d2304b933107198a910c1f3219acb65246f2b148f862703cffd51c6e62156abe" dependencies = [ "base64 0.21.5", "log", @@ -4648,26 +4624,27 @@ dependencies = [ [[package]] name = "usvg-parser" -version = "0.33.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7529174e721c8078d62b08399258469b1d68b4e5f2983b347d6a9d39779366c" +checksum = "12b940fea80394e3b14cb21c83fa1b8f8a41023c25929bba68bb84a76193ebed" dependencies = [ "data-url", "flate2", "imagesize", "kurbo", "log", - "rosvgtree", - "strict-num", + "roxmltree", + "simplecss", + "siphasher", "svgtypes", "usvg-tree", ] [[package]] name = "usvg-text-layout" -version = "0.33.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e672fbc19261c6553113cc04ff2ff38ae52fadbd90f2d814040857795fb5c50" +checksum = "69dfd6119f431aa7e969b4a69f9cc8b9ae37b8ae85bb26780ccfa3beaf8b71eb" dependencies = [ "fontdb 0.14.1", "kurbo", @@ -4681,14 +4658,14 @@ dependencies = [ [[package]] name = "usvg-tree" -version = "0.33.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a56e9cd3be5eb6d6744477e95b82d52d393fc1dba4b5b090912c33af337c20b" +checksum = "3185eb13b6e3d3cf1817d29612251cc308d5a7e5e6235362e67efe832435c6d9" dependencies = [ - "kurbo", "rctree", "strict-num", "svgtypes", + "tiny-skia-path 0.10.0", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 7dc5fccc..b3b05e6a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -23,9 +23,9 @@ html5ever = "0.26.0" image = "0.24.7" clap = { version = "4.3.24", features = ["cargo"] } copypasta = "0.10.0" -resvg = "0.33" -usvg = "0.33" -tiny-skia = "0.9.1" +resvg = "0.34" +usvg = "0.34" +tiny-skia = "0.10" anyhow = "1.0.75" dirs = "5.0.1" serde = { version = "1.0.193", features = ["derive"] } diff --git a/src/image/mod.rs b/src/image/mod.rs index 0947dcd6..d436d934 100644 --- a/src/image/mod.rs +++ b/src/image/mod.rs @@ -11,7 +11,7 @@ use std::io; use std::path::PathBuf; use std::sync::{Arc, Mutex}; use std::time::Instant; -use usvg::{Size as UsvgSize, TreeParsing, TreeTextToPath}; +use usvg::{TreeParsing, TreeTextToPath}; use wgpu::util::DeviceExt; use wgpu::{BindGroup, Device, TextureFormat}; @@ -212,18 +212,18 @@ impl Image { fontdb.load_system_fonts(); let mut tree = usvg::Tree::from_data(&image_data, &opt).unwrap(); tree.size = tree.size.scale_to( - UsvgSize::new( - tree.size.width() * hidpi_scale as f64, - tree.size.height() * hidpi_scale as f64, + tiny_skia::Size::from_wh( + tree.size.width() * hidpi_scale, + tree.size.height() * hidpi_scale, ) .unwrap(), ); tree.convert_text(&fontdb); let rtree = resvg::Tree::from_usvg(&tree); - let pixmap_size = resvg::IntSize::from_usvg(rtree.size); - let mut pixmap = tiny_skia::Pixmap::new(pixmap_size.width(), pixmap_size.height()) - .context("Couldn't create svg pixmap") - .unwrap(); + let mut pixmap = + tiny_skia::Pixmap::new(rtree.size.width() as u32, rtree.size.height() as u32) + .context("Couldn't create svg pixmap") + .unwrap(); rtree.render(tiny_skia::Transform::default(), &mut pixmap.as_mut()); ImageData::new( ImageBuffer::from_raw(pixmap.width(), pixmap.height(), pixmap.data().into())