diff options
author | 2023-09-10 00:34:21 +0200 | |
---|---|---|
committer | 2023-09-10 00:34:21 +0200 | |
commit | b8e5693a3089d728b4f8d4b3b0b7197202ebd732 (patch) | |
tree | 79a9f84f9920525657fbe03d53ce33bab09053d7 /tiny_skia/src/geometry.rs | |
parent | 956512338905bac0b156fdaf16fe3c3e07e97a84 (diff) | |
parent | a3489e4af960388e9f73988b88df361022a654a4 (diff) | |
download | iced-b8e5693a3089d728b4f8d4b3b0b7197202ebd732.tar.gz iced-b8e5693a3089d728b4f8d4b3b0b7197202ebd732.tar.bz2 iced-b8e5693a3089d728b4f8d4b3b0b7197202ebd732.zip |
Merge branch 'master' into explicit-text-caching
Diffstat (limited to 'tiny_skia/src/geometry.rs')
-rw-r--r-- | tiny_skia/src/geometry.rs | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/tiny_skia/src/geometry.rs b/tiny_skia/src/geometry.rs index 0fae7364..047bc0ff 100644 --- a/tiny_skia/src/geometry.rs +++ b/tiny_skia/src/geometry.rs @@ -154,8 +154,16 @@ impl Frame { .pre_concat(tiny_skia::Transform::from_rotate(angle.to_degrees())); } - pub fn scale(&mut self, scale: f32) { - self.transform = self.transform.pre_scale(scale, scale); + pub fn scale(&mut self, scale: impl Into<f32>) { + let scale = scale.into(); + + self.scale_nonuniform(Vector { x: scale, y: scale }); + } + + pub fn scale_nonuniform(&mut self, scale: impl Into<Vector>) { + let scale = scale.into(); + + self.transform = self.transform.pre_scale(scale.x, scale.y); } pub fn into_primitive(self) -> Primitive { @@ -295,7 +303,7 @@ pub fn into_fill_rule(rule: fill::Rule) -> tiny_skia::FillRule { } } -pub fn into_stroke(stroke: &Stroke) -> tiny_skia::Stroke { +pub fn into_stroke(stroke: &Stroke<'_>) -> tiny_skia::Stroke { tiny_skia::Stroke { width: stroke.width, line_cap: match stroke.line_cap { |