我想不出比这更优雅的解释了。所以我有一个长方形的容器和数量可变的物品,我想像这样均匀地填满容器
如果容器的长宽比1.5并且我有6项,那么列应该3

x x x
x x x

如果容器的长宽比2.0并且我有32项,那么列应该8
x x x x x x x x
x x x x x x x x
x x x x x x x x
x x x x x x x x

如果碰巧比率2.0并且我有30项,那么列应该仍然8
x x x x x x x x
x x x x x x x x
x x x x x x x x
x x x x x x

等等。我觉得这应该很简单,但我想不出一个简单的方法来做。输入为itemswidthheight,输出为columns(行将自行填写)
谢谢

最佳答案

我得到的公式是sqrt(项/纵横比)*纵横比。在场景3中,您可以将此结果进行舍入以获得所需的结果。
我怎么得到的:

'aspect ratio just seems to be scale of the number of rows; as such
columns = rows * aspect ratio
also
items = rows * columns
now subbing in / algebra
rows^2 * aspect ratio = items
rows = sqrt(items/aspect ration)
columns = sqrt(items/ aspect ratio) * aspect ratio'

关于html - 将物品整齐地包装到矩形盒子中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45538722/

10-11 02:01