2013-07-15 46 views
1

我正在製作一個桌面圖像編輯軟件,使用Processing。它將允許用戶選擇要編輯的圖像。用戶可以進行編輯的區域是固定的640 x 480屏幕。這意味着我將不得不縮放輸入圖像以適合屏幕。對於矩形圖像很容易。處理方形圖像時出現問題。
以編程方式,2500x2501不是正方形圖像。對於所有實際目的而言。如何檢測圖像是否是方形的?

如何確保我正確縮放這些圖像?

+2

計算縱橫比和使用的閾值,決定它是否是1左右 – akonsu

+1

你可以檢查如果這些值彼此或一些其它的0.1%之內小百分比,如果它們是,使每一邊的兩個值的平均值。從來沒有真正測試過這個,在我讀這個問題的時候,它只是在我看來。 – Josh

回答

1

計算縱橫比(寬度/高度,反之亦然)。我建議將其中另一個較小者分開,所以你總是得到一個不大於1的數字。

然後將閾值定義爲介於0和1之間的數字。如果得到的分割結果小於閾值,則可以將圖像視爲非平方。沿着這些線路

+1

處理你的例子。作品非常好。 –

1

≠... ...

var ratio = 1; 
if(Height>Width) 
{ 
    ratio = (Height/Width); 
}else{ 
    ratio = (Width/Height); 
} 

var ThresHoldVal = 0.1; // 10% out. 

if((Ratio-1) > ThresholdVal) 
{ 
    //Invalid. 
}