diff --git a/crates/typst-library/src/layout/flow.rs b/crates/typst-library/src/layout/flow.rs index fe6e9398a..802154a02 100644 --- a/crates/typst-library/src/layout/flow.rs +++ b/crates/typst-library/src/layout/flow.rs @@ -474,7 +474,7 @@ impl<'a> FlowLayouter<'a> { } } } - used.y += footnote_height; + used.y += footnote_height + float_top_height + float_bottom_height; // Determine the size of the flow in this region depending on whether // the region expands. Also account for fractional spacing and diff --git a/tests/ref/layout/place-float-columns.png b/tests/ref/layout/place-float-columns.png new file mode 100644 index 000000000..186b79d14 Binary files /dev/null and b/tests/ref/layout/place-float-columns.png differ diff --git a/tests/typ/layout/place-float-columns.typ b/tests/typ/layout/place-float-columns.typ new file mode 100644 index 000000000..0e5c6d0c2 --- /dev/null +++ b/tests/typ/layout/place-float-columns.typ @@ -0,0 +1,19 @@ +// Test floats in columns. + +--- +#set page(height: 200pt, width: 300pt) +#show: columns.with(2) + += Introduction +#figure( + placement: bottom, + caption: [A glacier], + image("/files/glacier.jpg", width: 50%), +) +#lorem(45) +#figure( + placement: top, + caption: [A rectangle], + rect[Hello!], +) +#lorem(20)