Sorry, I can’t find a proper and concise way to describe the problem in the title. Let me explain in detail here.
I’m making a poster with many color boxes. I want all boxes aligned and fill up all available vertical space and thus there is no extra blank areas. Here is a simplified version of it:
#set page(width: 300pt, height: 200pt)
#set rect(
inset: 8pt,
fill: rgb("e4e5ea"),
width: 100%,
radius: 5pt,
)
#grid(
columns: (1fr, 1fr, 1fr),
gutter: 3pt,
grid.cell(rowspan: 2, rect[
I don't want to use `fill` provided by `grid` because I can not get nice `radius`.\
This is 2 rows.
]),
rect[How to make this expand?],
rect[I want each cell to take up all available space.],
rect[I don't want to hard code heights of each row.],
rect[How to make this expand?],
)
The result:
The desired layout should look like the following:
It is achieved by using fill
provided by grid
, but I don’t want to use it because it is much less flexible than rect
or other things. For example, it cannot have radius
set. Is it possible to make all rect
automatically take up all vertical spaces?