2011-12-22 95 views
0

我試圖縮放一堆圖像,以使它們具有相同的面積,但保持其寬高比,但無法找到公式來執行此操作。將圖像縮放到某個區域

有沒有人知道一個公式?

回答

4

對於給定的區域A,

newx * newy = A 
newx/newy = oldx/oldy 

它給你:

newy = A/newx 
newy = newx/(oldx/oldy) 

A/newx = newx/(oldx/oldy) 
A * oldx/oldy = newx^2 

然後解決到:

newx = sqrt(A * oldx/oldy) 
newy = A/newx 

話又說回來,這是一個數學問題,而不是一個編程...

+0

我需要編程它到C#... –

+1

那有什麼問題嗎?唯一會改變的是'Math.sqrt'。這仍然是一個數學問題。 – Amadan

2

給n您有尺寸(W1,H1)和(W2,H2)的兩個圖像和要在第二圖像縮放到相同的區域作爲第一,同時保持高寬比,則

A = w1 * h1 
new_w2 = sqrt(A * (w2/h2)) 
new_h2 = A/new_w2 
+0

我認爲應該是new_w2 = sqrt(A *(w2/h2)) –

+0

正確。固定。 –

相關問題