小编典典

如何将一个矩形缩放到另一个矩形内的最大尺寸?

algorithm

我有一个源矩形和一个目标矩形。我需要找到可缩放到源的最大比例,同时适合目标矩形并 保持其原始宽高比

Google找到了一种方法,但是我不确定它是否在所有情况下都有效。这是我的自制解决方案:

  • 计算每个矩形的高度/宽度。这给出了对角线msrc和的斜率mdest
  • 如果为msrc < mdst,则缩放源 宽度 以适合目标 宽度 (并以相同比例缩放高度)
  • 否则,缩放源 高度 以适合目标 高度 (并以相同比例缩放宽度)

寻找其他可能的解决方案。我什至不确定我的算法是否在所有情况下都有效!


阅读 441

收藏
2020-07-28

共1个答案

小编典典

scale = min( dst.width/src.width, dst.height/src.height)

这是您的方法,但是写得更干净。

2020-07-28