Flash - переполнение стэка из-за размеров изображения
Материал из AOW
При попытке загрузить изображение 3000x2000 (скрипт написан на AS2) и после этого обрезать маленьким квадратиком, появляется пустое белое окно на месте flash.
//createEmptyMovieClip("fullImage", getNextHighestDepth());
var fullClipLoader = new MovieClipLoader();
fullClipLoader.loadClip("fountain.jpg", fullImage);
// Funtion for scrolling through the image
fullClipLoader.onLoadComplete = function() {
createEmptyMovieClip("mask", getNextHighestDepth());
mask._x = 50;
mask._y = 50;
mask.beginFill(0xFF0000,50);
mask.lineStyle(5,0xFF00FF,100);
mask.lineTo(100,0);
mask.lineTo(100,100);
mask.lineTo(0,100);
mask.lineTo(0,0);
container.setMask(mask);
/*
fullImage._x += _level0._xmouse;
if (fullImage._x>_level0._x) {
fullImage._x = _level0._x;
}
if (fullImage._x<(_level0._x-(fullImage._width-_level0._width))) {
fullImage._x = _level0._x-(fullImage._width-_level0._width);
}
*/
};
Ответ из Adobe's documentation:
- Максимальная ширина и максимальная высота BitmapData object - 2880 pixels. (AS2 docs)
- В AIR 1.5 и Flash Player 10, максимальный размер BitmapData object - 8191 pixels в высоту или ширину, и суммарное количество пикселов не должно превышать 16,777,215 pixels. (Так, если BitmapData object - 8191 pixels в ширину, он может быть только 2048 pixels в высоту.) В Flash Player 9 и более ранних AIR 1.1 и более ранних , предел 2880 pixels в ширину и 2880 в высоту. (FP10 docs)

