summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Biedert <github@ericbiedert.de>2024-04-01 22:37:05 +0200
committerLaurenz <laurmaedje@gmail.com>2024-05-17 14:27:58 +0200
commitd007df3ecc1e198481ec1000c8953516f317ff91 (patch)
treed859b2db375dd832b837563357e425a27f763079
parent2c6b69ff6d078439e6c3018e901d6bbbb614419a (diff)
Fix patterns with spacing in PDF (#3793)
-rw-r--r--crates/typst-pdf/src/pattern.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/crates/typst-pdf/src/pattern.rs b/crates/typst-pdf/src/pattern.rs
index 0829ef32..6dfb0f66 100644
--- a/crates/typst-pdf/src/pattern.rs
+++ b/crates/typst-pdf/src/pattern.rs
@@ -73,7 +73,9 @@ pub(crate) fn write_patterns(ctx: &mut PdfContext) {
resources_map.finish();
tiling_pattern
.matrix(transform_to_array(
- transform.pre_concat(Transform::scale(Ratio::one(), -Ratio::one())),
+ transform
+ .pre_concat(Transform::scale(Ratio::one(), -Ratio::one()))
+ .post_concat(Transform::translate(Abs::zero(), pattern.spacing().y)),
))
.filter(Filter::FlateDecode);
}
@@ -82,7 +84,7 @@ pub(crate) fn write_patterns(ctx: &mut PdfContext) {
/// A pattern and its transform.
#[derive(Clone, PartialEq, Eq, Hash)]
pub struct PdfPattern {
- /// The transform to apply to the gradient.
+ /// The transform to apply to the pattern.
pub transform: Transform,
/// The pattern to paint.
pub pattern: Pattern,