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)

Разработка веб-сайтов, автоматизация.
По всем вопросам обращайтесь по телефонам:

+7 495 640 29 90
+7 495 729 07 98
http://artofweb.ru