Почему не Flex загружать мои изображения - PullRequest
1 голос
/ 16 июня 2011

У меня есть приложение Flex (не AIR), которое загружает изображение и выполняет некоторые эффекты, приложение хорошо работает во Flash Builder и в папке отладки. Но когда я пытаюсь скопировать * .swf в другую локальную папку, появляются проблемы с загрузкой изображения.

Кто-нибудь может мне помочь? Может быть нужно уточнить некоторые ограничения или правила?

ОБНОВЛЕНИЕ Вы не понимаете меня, я пытаюсь загрузить изображение с рабочего стола, используя класс FileReference, изображение отображается успешно, но origBitmap после метода saveAsBitmap () имеет значение null

public function loadImage():void
{
  fileRef.addEventListener(Event.SELECT, onFileSelected); 
  var textTypeFilter:FileFilter = new FileFilter("Images (*.jpg, *.jpeg, *.gif,*.png)", "*.jpg; *.jpeg; *.gif; *.png"); 
  fileRef.browse([textTypeFilter]); 
}

public function onFileSelected(evt:Event):void 
{ 

  fileRef.addEventListener(Event.COMPLETE, onComplete); 
  fileRef.load(); 

} 

public function onComplete(evt:Event):void 
{ 
byteArr = fileRef.data as ByteArray;
ldr = new Loader();
ldr.loadBytes(byteArr);
fileRef.removeEventListener(Event.SELECT, onFileSelected);
fileRef.removeEventListener(Event.COMPLETE, onComplete); 
callLater(show);
} 

public function show():void
{    
 currImg.source = ldr;
 callLater(saveAsBitmap);

}
public function saveAsBitmap():void
{
 bd = new BitmapData(currImg.contentWidth * currImg.scaleX, currImg.contentHeight *  currImg.scaleY,true);
 bd.draw(currImg as IBitmapDrawable);
 origBitmap = new Bitmap(bd);
 }

//.....

<mx:Image id="currImg"/>

//.....

Ответы [ 2 ]

1 голос
/ 16 июня 2011

Пожалуйста, оставьте свой код.Я предполагаю, что когда вы перемещали SWF, вы также не перемещали изображения вместе с ним и не изменяли свой код, чтобы отразить новое местоположение.Однако, не увидев ваш код, мы не сможем узнать.

1 голос
/ 16 июня 2011

Вы не загружаете изображения из-за ошибок безопасности в песочнице. Вам нужно будет добавить crossdomain.xml на сервер, на котором хранятся файлы изображений.

Я полагаю, что Adobe недавно ослабила свои междоменные ограничения для растровых изображений. Однако я думаю, что вы все равно не сможете манипулировать данными байтового массива.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...