summaryrefslogtreecommitdiff
path: root/crates
diff options
context:
space:
mode:
authorSébastien d'Herbais de Thun <sebastien.d.herbais@gmail.com>2023-12-04 14:24:05 +0100
committerGitHub <noreply@github.com>2023-12-04 14:24:05 +0100
commitf5c90c8714413507c93068ba1bd6a035838e9beb (patch)
treea188ed2e3b2751d91ffc6437cbad5c009f2de840 /crates
parentb8b1a92151c4d092bbc6ec732483d72b86e8dd86 (diff)
Fix PDF transform (#2850)
Diffstat (limited to 'crates')
-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 965ce370..90610066 100644
--- a/crates/typst-pdf/src/pattern.rs
+++ b/crates/typst-pdf/src/pattern.rs
@@ -1,7 +1,7 @@
use ecow::eco_format;
use pdf_writer::types::{ColorSpaceOperand, PaintType, TilingType};
use pdf_writer::{Filter, Finish, Name, Rect};
-use typst::layout::{Abs, Transform};
+use typst::layout::{Abs, Ratio, Transform};
use typst::util::Numeric;
use typst::visualize::{Pattern, RelativeTo};
@@ -73,7 +73,9 @@ pub(crate) fn write_patterns(ctx: &mut PdfContext) {
resources_map.finish();
tiling_pattern
- .matrix(transform_to_array(*transform))
+ .matrix(transform_to_array(
+ transform.post_concat(Transform::scale(Ratio::one(), -Ratio::one())),
+ ))
.filter(Filter::FlateDecode);
}
}