如果兩幅圖像沒有相同的寬高比,那麼在數學上不可能將寬度和高度都縮放20%並保持寬高比。
因此,選擇一個軸,您將使用它來縮放,並將另一個縮放到保持縱橫比的大小。
例如,使用寬度:
new_image1_width = 512 * (20/100) = 102.4
然後計算新的高度以保持高寬比:
original_aspect_ratio = image2_width/image2_height = 256/256 = 1
new_image1_height = 102.4/original_aspect_ratio = 102.4
或做它的其他方式(此時由比乘以):
new_image1_height = 515 * (20/100) = 103
original_aspect_ratio = image2_width/image2_height = 256/256 = 1
new_image1_width = 103 * original_aspect_ratio = 103
如果您必須處理任意圖像大小和任意比例因子,則需要兩個在兩種方式之間切換取決於你想要的規則是什麼。例如。您可以隨時使用兩者中較小的一個,或者使用比例調整後的高度,除非這給了您比圖像1高度大的高度,並且在這種情況下使用第二種方式,反之亦然。
按面積劃分20%,或者按照其中一個座標軸,另一個座標軸重新調整大小以保持縱橫比? – samgak
@samgak在寬度和高度上小於圖像1的20%。我可以做這個部分。現在的問題是我想在縮放之後長度相同的長寬比。 – Programmer