2013-03-19 127 views
0

我正在使用as3中的bitmapdata尺寸的最大限制。我試圖找到符合下面約束條件的最大寬度和高度,並保持我目前的圖像縱橫比。我的圖像是2980 x 3220(寬x高)。獲取圖像的最大尺寸

的BitmapData約束: 在AIR 1.5和Flash播放器10,用於BitmapData對象的最大尺寸的寬度或高度 8191個像素,並且像素的總數不能超過16,777,215像素。 (因此,如果BitmapData對象的寬度爲8,191像素寬,它只能爲2,048像素。)

如果你可以讓我知道你是如何得到你的答案,這將是真棒太

編輯: 發現寬度和高度值,其中寬度/高度比= = 0.9254658385 AND 寬×高=一些號碼作爲接近但不超過最大像素(16,777,215)

+0

16,777,215/8191 = 2,048 – 2013-03-19 19:11:33

+0

2980/3220!= 2048/8191 - >它必須保持長寬比 – pinktoad 2013-03-19 19:16:47

回答

3

2980 * 3220 = 9595600。現在,如果我們用這個數字除16777216,那麼我們會在約束= 1.7484的情況下得到您的位圖有多少像素。爲了保持寬高比,你必須以相同的百分比增加寬度和高度,因此我們需要取這個= 1.3222的平方根(這是四捨五入)。通過這個乘以你的尺寸,得到3940 * 4257,總計16772580像素,並且寬度和高度都小於8192.

所以,你的圖像最多可以有3940的寬度和4257的高度。

+0

你真棒謝謝你的一個很好的解釋! – pinktoad 2013-03-19 19:30:54