From cc1f974164ab5d42c3eb1b8fcd7a9227fbfd1d0e Mon Sep 17 00:00:00 2001 From: Wenzhuo Liu Date: Tue, 9 Jan 2024 16:12:08 +0800 Subject: [PATCH] Partially fix hide for line, polygon, table, grid (#3139) --- crates/typst/src/layout/grid/layout.rs | 4 ++ crates/typst/src/visualize/image/mod.rs | 1 + crates/typst/src/visualize/line.rs | 1 + crates/typst/src/visualize/polygon.rs | 1 + tests/ref/layout/hide.png | Bin 943 -> 49286 bytes tests/typ/layout/hide.typ | 71 ++++++++++++++++++++++++ 6 files changed, 78 insertions(+) diff --git a/crates/typst/src/layout/grid/layout.rs b/crates/typst/src/layout/grid/layout.rs index 24d641a66..b58e73c86 100644 --- a/crates/typst/src/layout/grid/layout.rs +++ b/crates/typst/src/layout/grid/layout.rs @@ -376,6 +376,10 @@ impl<'a> GridLayouter<'a> { self.render_fills_strokes()?; + for frame in &mut self.finished { + frame.meta(self.styles, false); + } + Ok(Fragment::frames(self.finished)) } diff --git a/crates/typst/src/visualize/image/mod.rs b/crates/typst/src/visualize/image/mod.rs index 5bfda381e..7aa8361b2 100644 --- a/crates/typst/src/visualize/image/mod.rs +++ b/crates/typst/src/visualize/image/mod.rs @@ -236,6 +236,7 @@ impl Layout for ImageElem { // Create a clipping group if only part of the image should be visible. if fit == ImageFit::Cover && !target.fits(fitted) { + frame.meta(styles, false); frame.clip(Path::rect(frame.size())); } diff --git a/crates/typst/src/visualize/line.rs b/crates/typst/src/visualize/line.rs index 12ec44733..94841d39e 100644 --- a/crates/typst/src/visualize/line.rs +++ b/crates/typst/src/visualize/line.rs @@ -89,6 +89,7 @@ impl Layout for LineElem { let mut frame = Frame::soft(target); let shape = Geometry::Line(delta.to_point()).stroked(stroke); frame.push(start.to_point(), FrameItem::Shape(shape, self.span())); + frame.meta(styles, false); Ok(Fragment::frame(frame)) } } diff --git a/crates/typst/src/visualize/polygon.rs b/crates/typst/src/visualize/polygon.rs index 14156ce19..3b686f791 100644 --- a/crates/typst/src/visualize/polygon.rs +++ b/crates/typst/src/visualize/polygon.rs @@ -171,6 +171,7 @@ impl Layout for PolygonElem { let shape = Shape { geometry: Geometry::Path(path), stroke, fill }; frame.push(Point::zero(), FrameItem::Shape(shape, self.span())); + frame.meta(styles, false); Ok(Fragment::frame(frame)) } diff --git a/tests/ref/layout/hide.png b/tests/ref/layout/hide.png index 7367e8cef8c14fea51902912df5721eebfe1ae3d..d89800494f96a622ae13a223c937662231641233 100644 GIT binary patch literal 49286 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ê_8W#O5CCZ9M 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 edVBK^<4OJ1u9oyeC6>6$l z!rrHM#*0U~sm3YhY$isV8;f_}k>@xq|BUBdK|ga3!<=2dMM`r-r@nhwy@i{jTv;J6rMs-d#C|(D%(%5u^r6>_clAw8I)N|t%C33nXeKH6=FoF5 zhdmpzT|I848qM^XtX3_U5H!ter$}4-50@DRCsqm`G`q&i;QDB%_`}UczFsVgSA1x^ zu+TWGR&C8$b_SD98-1tEn|!=jULTkt|8C`?!`%TZW|=D0$lQ9cbEA_LW4jPH!%pW{ zPipK%R~@ZsH+RE&(`&oJd-HX-Zkw)e=egHBr@CP6 zJ=O<%mu|Zj^!XF__DeSYsPX%c)9K`{IlbA}-|wt{IO+STxc5H(G5h}4&Hpc8b*{r> z_TQ|On(0ee&NW>Wx31Rh{%2G8_WA9Dn$MV4h_S1>Mo5P7Go0xD`rP>7Xa11BIc(dH za(;i%@xj_@?+#t{LvsZ8&Rco!JV$K*a?#V77mOq1Cxky~xKQGJC_c4J-dsOP$bv;C@S4X?ktQXkjt`C(y*mw@LsT%>n(M@@>eXQqoboFQNzyH*}C0bl>=DGQM zFJEELEDn*?UYYScY}Rv597$Z^2RjEaBLH*5&ll=@e(jk1?44dIC_{R>`njxgN@xNA D2WgzX diff --git a/tests/typ/layout/hide.typ b/tests/typ/layout/hide.typ index a979b24f8..2cd8333e0 100644 --- a/tests/typ/layout/hide.typ +++ b/tests/typ/layout/hide.typ @@ -3,3 +3,74 @@ --- AB #h(1fr) CD \ #hide[A]B #h(1fr) C#hide[D] +--- +Hidden: +#hide[#line(length: 100%)] +#line(length: 100%) +--- +Hidden: +#hide(table(rows: 2, columns: 2)[a][b][c][d]) +#table(rows: 2, columns: 2)[a][b][c][d] +--- +Hidden: +#hide[ + #polygon((20%, 0pt), + (60%, 0pt), + (80%, 2cm), + (0%, 2cm),) +] +#polygon((20%, 0pt), + (60%, 0pt), + (80%, 2cm), + (0%, 2cm),) +--- +#set rect( + inset: 8pt, + fill: rgb("e4e5ea"), + width: 100%, +) + +Hidden: +#hide[ +#grid( + columns: (1fr, 1fr, 2fr), + rows: (auto, 40pt), + gutter: 3pt, + rect[A], + rect[B], + rect[C], + rect(height: 100%)[D], +) +] +#grid( + columns: (1fr, 1fr, 2fr), + rows: (auto, 40pt), + gutter: 3pt, + rect[A], + rect[B], + rect[C], + rect(height: 100%)[D], +) +--- + +Hidden: +#hide[ +- 1 +- 2 + 1. A + 2. B +- 3 +] + + +- 1 +- 2 + 1. A + 2. B +- 3 + +--- +Hidden: +#hide(image("/files/tiger.jpg", width: 5cm, height: 1cm,)) + +#image("/files/tiger.jpg", width: 5cm, height: 1cm,)