重新调整矩形以适合行,但保持比例

时间:2013-08-31 00:35:53

标签: php javascript math language-agnostic rectangles

基本上我想转此:

enter image description here

进入这个:

enter image description here

尝试diff = actual_row_width - max_row_width / number_of_items;,然后从每个矩形中减去diff,但它似乎没有保持比率:(

2 个答案:

答案 0 :(得分:1)

给出

  • W =宽度
  • H =身高

你想要

  • NH =新高度

基于此:

  • R =比率= NW / W

然后

  • NH =新高度= H * R = H *(NW / W)

答案 1 :(得分:1)

差异是关于每个项目的宽度的加权和。你不能只从每个项目中减去相同的数量,但你应该根据每个项目的相对宽度来划分它。尝试,为每个矩形:

diff = (actual_row_width - max_row_width) * actual_rect_width / actual_row_width

您还可以使用以下公式计算百分比并计算每个新的矩形宽度:

new_rect_width = (actual_rect_width / actual_row_width) * max_row_width

(actual_rect_width / actual_row_width)是每个矩形所占行的宽度的百分比。