我想要的解決方案是從給定數量的尺寸中選擇最佳擬合圖像尺寸。逼近擬合圖像尺寸
鑑於一些相當隨機的決議,我想找到一個圖像的大小盡可能接近我的首選大小。
假設我想使用圖像尺寸寬x高(preferredImageSize
)。
例如:320x200的
假設我有我的處置(availableImageSize
)以下圖像尺寸寬度1 X height1,寬度2 X身高2,...(也許多達10點不同的大小)。
例子:474x272,474x310,264x150,226x128,640x365,474x410,小480x276,256x144,160x90,320x182,640x365,192x108,240x137,小480x276
對於開發一些通用的方法,使preferredImageSize
可變我想找到一個很好的解決方案,計算速度相當快,但也會導致在屏幕上看起來不錯。
我定義看起來不錯屏幕上,因爲這是一個圖像:
- 幾乎不放大的
- 作爲接近給定縱橫比(
preferredImageSize.width/preferredImageSize.height
)儘可能 - 可以是重按比例縮小
- 可能會以非常小的量裁剪/拉伸
我的初始(相當平凡)的方法:
運行一次可用的圖像大小,找到最小寬度增量(abs(preferredImageSize.width - availableImageSize.width)
)。然後選擇具有最小增量的圖像(bestFitWidth
)。
那肯定是解決問題的一種方式,但絕對不符合我的看起來不錯,屏幕上的希望。
任何提示,無論文本,來源或鏈接是否真棒。噢,如果你認爲我的要求(又名希望)已經領先進入錯誤的方向,繼續前進,讓我知道...
編輯:增加了裁剪和拉伸的選擇 - 我這,害怕會使問題更難解決。所以如果需要的話,不要把它排除在外。
不知道爲什麼人們低估了你的問題...我覺得這很好... +1 – 2013-03-05 23:07:37
我同意。我認爲這是一個體面的問題。 – 2013-03-05 23:18:37