pub(crate) fn pack_rows( dims: &[(u32, u32)], canvas_w: f32, cfg: LayoutConfig, ) -> (Vec<LaidRow>, f32)
Greedy justified-row pack. dims[i] = (w, h) for asset i.
dims[i] = (w, h)