Показать сообщение отдельно
Старый 16.08.2013, 04:39
AlexCooper вне форума Посмотреть профиль Отправить личное сообщение для AlexCooper Найти все сообщения от AlexCooper
  № 2  
Ответить с цитированием
AlexCooper
 
Аватар для AlexCooper

Регистрация: Sep 2008
Адрес: Черкассы
Сообщений: 1,167
Записей в блоге: 1
Отправить сообщение для AlexCooper с помощью ICQ Отправить сообщение для AlexCooper с помощью Skype™
Битую картинку?

Код AS3:
new CrossLoader('http://www.flasher.ru/forum/images/russian/flasher_logo_2013.gif').addEventListener(Event.COMPLETE, loadComplete);
 
private function loadComplete(event:Event):void {
 
	(event.target as CrossLoader).bitmapData; // psevdo original bitmap data
 
}
CrossLoader.as
Код AS3:
package me.inpictures.net{
 
	import flash.net.URLRequest;
 
	import flash.display.Loader;
	import flash.display.Bitmap;
	import flash.display.BitmapData;
	import flash.display.DisplayObject;
 
	import flash.events.Event;
	import flash.events.IOErrorEvent;
	import flash.events.SecurityErrorEvent;
 
	import flash.system.Security;
	import flash.system.LoaderContext;
 
	public class CrossLoader extends Bitmap {
 
		private var _loader : Loader = null;
		private var _loaderContent : DisplayObject = null;
 
		public function CrossLoader(url:String):void {
 
			Security.allowDomain("*");
			Security.allowInsecureDomain("*");
 
			_loader = new Loader();
 
			_loader.addEventListener(Event.ADDED, _onAddedToLoader, true, int.MAX_VALUE);
			_loader.addEventListener(Event.ADDED, _onAddedToLoader, false, int.MAX_VALUE);
 
			_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, _onPicLoaded);
			_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, _errorHandler);
 
			_loader.load(new URLRequest(url));
 
		}
 
		private function _onAddedToLoader( e:Event ) : void
		{ 
			if (e.target)
			{
				_loaderContent = e.target as DisplayObject;
			}
		}
 
		private function _onPicLoaded( e:Event ) : void
		{ 
			var bd:BitmapData = (_loaderContent as Bitmap).bitmapData;
 
			var bdCopy:BitmapData = new BitmapData(bd.width, bd.height, true, 0x0);
				bdCopy.draw(bd);
 
			this.bitmapData = bdCopy;
 
			try {
				_loaderContent = _loader.content;
			} catch (exception:Error) {
				trace("exception: " + exception);
			}
 
			dispatchEvent(new Event(Event.COMPLETE));
		}
 
		private function _errorHandler(info:IOErrorEvent):void {
			trace("errorHandler...\n");			
		}
	}
}
__________________
return this...


Последний раз редактировалось AlexCooper; 16.08.2013 в 05:07.