And ho provato a buttare giu qualcosa:
Codice PHP:
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
stage.quality=StageQuality.BEST;
var loader:Loader = addChild(new Loader()) as Loader;
loader.contentLoaderInfo.addEventListener(Event.INIT,verifica1);// aggancio all'istanza un listener che verifica quando il caricamento è avvenuto e richiama la funzione associata
loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, progressHandler);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, completeHandler);
loader.load(new URLRequest("images/foto.jpg"));
function verifica1(event:Event){
trace("caricamento iniziato");
}
function progressHandler (evt:ProgressEvent):void {
trace(((evt.bytesLoaded / evt.bytesTotal) * 100) + "%");
}
function completeHandler (evt:Event = null):void {
//var loader:Loader = Loader(event.target.loader);
var image:Bitmap = Bitmap(loader.content);
var imagedata:BitmapData = image.bitmapData;
var rectang:Rectangle = new Rectangle(0, 0, 0, 0);
var pt:Point = new Point(50, 50);
var filter:BlurFilter = new BlurFilter();
filter.blurX = 1;
filter.blurY = 1;
flash.filters.BitmapFilterQuality.HIGH
image.smoothing=true;
imagedata.applyFilter(imagedata, rectang, pt, filter);
if (evt) loader.alpha = 1;
try {
if ((stage.stageWidth / stage.stageHeight) > loader.width / loader.height) {
loader.height = stage.stageWidth / (loader.width / loader.height);
loader.width = stage.stageWidth;
} else {
loader.width = stage.stageHeight / (loader.height / loader.width);
loader.height = stage.stageHeight;
}
loader.content.x = loader.content.width * -0.5;
loader.content.y = loader.content.height * -0.5;
loader.x = stage.stageWidth * 0.5;
loader.y = stage.stageHeight * 0.5;
} catch (err:Error) { }
}
stage.addEventListener(Event.RESIZE, resizeHandler);
function resizeHandler (evt:Event = null):void {
if (evt) completeHandler();
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,verifica1);
}
//resize();
funzia tutto! ho preso un po del tuo codice e ho aggiunto la classe BitmapData, anche perchè se cambiavo la definizione del browser dava dei problemi di sfarfallio e non si vedeva niente.
che dici? il codice è scritto bene o magari si può semplificare il bitmapdata?
un'altra cosa:
non ho mai usato var loader:Loader = addChild(new Loader()) as Loader;
ho sempre diviso le 2 cose e ho scritto alla fine addChild()
cosa cambia con as Loader?