diff options
| author | Laurenz <laurmaedje@gmail.com> | 2024-07-20 14:51:24 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-20 12:51:24 +0000 |
| commit | 0c37a2c2334afb6947f265e00bded0fe75be6434 (patch) | |
| tree | c6dd66554f1f9cadc1f43f386639c05f3aa6bf3e /tests | |
| parent | 3aa18beacf84e8e982a1cb28170d281769c06dd0 (diff) | |
Support transparent page fill (#4586)
Co-authored-by: Martin Haug <mhaug@live.de>
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/fuzz/src/compile.rs | 3 | ||||
| -rw-r--r-- | tests/ref/page-fill-none.png | bin | 0 -> 97 bytes | |||
| -rw-r--r-- | tests/ref/pattern-relative-self.png | bin | 423 -> 474 bytes | |||
| -rw-r--r-- | tests/src/run.rs | 9 | ||||
| -rw-r--r-- | tests/suite/layout/page.typ | 8 | ||||
| -rw-r--r-- | tests/suite/visualize/pattern.typ | 16 |
6 files changed, 21 insertions, 15 deletions
diff --git a/tests/fuzz/src/compile.rs b/tests/fuzz/src/compile.rs index c9536150..fa939781 100644 --- a/tests/fuzz/src/compile.rs +++ b/tests/fuzz/src/compile.rs @@ -6,7 +6,6 @@ use typst::foundations::{Bytes, Datetime}; use typst::syntax::{FileId, Source}; use typst::text::{Font, FontBook}; use typst::utils::LazyHash; -use typst::visualize::Color; use typst::{Library, World}; struct FuzzWorld { @@ -68,7 +67,7 @@ fuzz_target!(|text: &str| { let world = FuzzWorld::new(text); if let Ok(document) = typst::compile(&world).output { if let Some(page) = document.pages.first() { - std::hint::black_box(typst_render::render(&page.frame, 1.0, Color::WHITE)); + std::hint::black_box(typst_render::render(page, 1.0)); } } comemo::evict(10); diff --git a/tests/ref/page-fill-none.png b/tests/ref/page-fill-none.png Binary files differnew file mode 100644 index 00000000..d225135f --- /dev/null +++ b/tests/ref/page-fill-none.png diff --git a/tests/ref/pattern-relative-self.png b/tests/ref/pattern-relative-self.png Binary files differindex 28408081..617e7dd6 100644 --- a/tests/ref/pattern-relative-self.png +++ b/tests/ref/pattern-relative-self.png diff --git a/tests/src/run.rs b/tests/src/run.rs index 3db03ba4..9681ae4c 100644 --- a/tests/src/run.rs +++ b/tests/src/run.rs @@ -359,13 +359,8 @@ fn render(document: &Document, pixel_per_pt: f32) -> sk::Pixmap { } let gap = Abs::pt(1.0); - let mut pixmap = typst_render::render_merged( - document, - pixel_per_pt, - Color::WHITE, - gap, - Color::BLACK, - ); + let mut pixmap = + typst_render::render_merged(document, pixel_per_pt, gap, Some(Color::BLACK)); let gap = (pixel_per_pt * gap.to_pt() as f32).round(); diff --git a/tests/suite/layout/page.typ b/tests/suite/layout/page.typ index f833af59..0e1f7729 100644 --- a/tests/suite/layout/page.typ +++ b/tests/suite/layout/page.typ @@ -66,7 +66,13 @@ // Test page fill. #set page(width: 80pt, height: 40pt, fill: eastern) #text(15pt, font: "Roboto", fill: white, smallcaps[Typst]) -#page(width: 40pt, fill: none, margin: (top: 10pt, rest: auto))[Hi] +#page(width: 40pt, fill: auto, margin: (top: 10pt, rest: auto))[Hi] + +--- page-fill-none --- +// Test disabling page fill. +// The PNG is filled with black anyway due to the test runner. +#set page(fill: none) +#rect(fill: green) --- page-margin-uniform --- // Set all margins at once. diff --git a/tests/suite/visualize/pattern.typ b/tests/suite/visualize/pattern.typ index 08051ed2..b0c92efa 100644 --- a/tests/suite/visualize/pattern.typ +++ b/tests/suite/visualize/pattern.typ @@ -21,24 +21,30 @@ --- pattern-relative-self --- // Test with relative set to `"self"` #let pat(..args) = pattern(size: (30pt, 30pt), ..args)[ + #set line(stroke: green) #place(top + left, line(start: (0%, 0%), end: (100%, 100%), stroke: 1pt)) #place(top + left, line(start: (0%, 100%), end: (100%, 0%), stroke: 1pt)) ] #set page(fill: pat(), width: 100pt, height: 100pt) - -#rect(fill: pat(relative: "self"), width: 100%, height: 100%, stroke: 1pt) +#rect( + width: 100%, + height: 100%, + fill: pat(relative: "self"), + stroke: 1pt + green, +) --- pattern-relative-parent --- // Test with relative set to `"parent"` -#let pat(..args) = pattern(size: (30pt, 30pt), ..args)[ +#let pat(fill, ..args) = pattern(size: (30pt, 30pt), ..args)[ + #rect(width: 100%, height: 100%, fill: fill, stroke: none) #place(top + left, line(start: (0%, 0%), end: (100%, 100%), stroke: 1pt)) #place(top + left, line(start: (0%, 100%), end: (100%, 0%), stroke: 1pt)) ] -#set page(fill: pat(), width: 100pt, height: 100pt) +#set page(fill: pat(white), width: 100pt, height: 100pt) -#rect(fill: pat(relative: "parent"), width: 100%, height: 100%, stroke: 1pt) +#rect(fill: pat(none, relative: "parent"), width: 100%, height: 100%, stroke: 1pt) --- pattern-small --- // Tests small patterns for pixel accuracy. |
