SWiSH Forum Strona Główna SWiSH Forum
Forum użytkowników programów SWiSH

FAQFAQ  SzukajSzukaj  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload

Poprzedni temat «» Następny temat
load image i smoothing, czyli ładowanie i wygładzanie zdjęć
Autor Wiadomość
espe1
Profesjonalista


Pomógł: 16 razy
Dołączył: 02 Lis 2011
Posty: 175
Skąd: łódzkie
Wysłany: Wto 08 Lis, 2011 10:55   load image i smoothing, czyli ładowanie i wygładzanie zdjęć

Widzę, że to najczęstszy problem na tym forum, a jest na to perfekcyjny skrypt, który wygładza ładowane zdjęcia.

1. Tworzymy pustego Movie Clipa, najprościej przez: Insert Movie Clip
2. Wstawiamy do naszego Movie Clipa skrypt:

Kod:


onSelfEvent (load) {
import flash.display.BitmapData;
import flash.geom.Matrix;
function myCopy(pic) {
var mc = this.createEmptyMovieClip('mc', this.getNextHighestDepth());
var bmp = new flash.display.BitmapData(loadListener.myWidth, loadListener.myHeight, true, 0xFFFFFF);
bmp.draw(pic);
this.picparent.container.attachBitmap(bmp,0,null,true);
this.picparent._rotation = 0; //możliwość obrotu zdjęcia np. 30 (w prawo) lub -30 (w lewo)
}
this.createEmptyMovieClip('temploader', this.getNextHighestDepth());
this.createEmptyMovieClip('picparent', this.getNextHighestDepth());
picparent.createEmptyMovieClip('container', this.getNextHighestDepth());
var loadListener:Object = new Object();
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(loadListener);
loadListener.onLoadStart = function(target_mc:MovieClip):Void {
target_mc._alpha=0;
}
loadListener.onLoadInit = function(target_mc:MovieClip):Void  {
this.myWidth = target_mc._width;
this.myHeight = target_mc._height;
myCopy(temploader);
};
function preload(myClip) {
mcLoader.loadClip(myClip,temploader);
}
preload("http://aux3.iconpedia.net/uploads/69290979.png"); //adres obrazka z sieci lub lokalny
}


I drugi skrypt, też działa ale troszkę mniej wygładza.
1. Tworzymy nowego Movie Clipa i nazywamy go mc
2. w scenie 1 wstawiamy skrypt:

Kod:


onFrame (1) {
    mc.loadMovie("http://aux3.iconpedia.net/uploads/69290979.png"); //adres obrazka z sieci lub lokalny   
}
onFrame (3) {
    if (mc.getPercentLoaded() == 100) {
        var bmp=new flash.display.BitmapData(this.mc._width,this.mc._height, true, 0x000000);
        this.mc.attachBitmap(bmp,this.mc.getNextHighestDepth(),"auto",true);
        bmp.draw(this.mc); 
        stop();
    }else{
        prevFrameAndPlay();
        }   
}


Dodam tylko, że komendy:

Kod:

mc.forcesmoothing = true
mc._quality="BEST"


nie działają!!!
 
     
^Januszr 



Pomógł: 216 razy
Dołączył: 11 Maj 2005
Posty: 1854
Skąd: Stolyca od urodzenia
Wysłany: Wto 08 Lis, 2011 13:16   

Dzięki.
Jeszcze warto naskrobać co by allow domain pozamieniać albo skorzystać z tego:

System.security.allowDomain("http://aux3.iconpedia.net")

Ale to to już drobiazg...
_________________
Niestety używam nieoficjalnych wersji Swish, które można zassać z forums.swishzone.com - jest na szczycie listy w BugsForum.
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  


Powered by phpBB modified by Przemo © 2003 phpBB Group
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
         
Strona wygenerowana w 0.11 sekundy. Zapytań do SQL: 13