Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 07-01-2006, 18:35   #1 (permalink)
Neuer User
 
Registriert seit: Apr 2004
Beiträge: 181
Bildmaße einer ext. Imagedei ermitteln

Hallo,

ich lade per loadMovie mehrere Bilder in einen zuvor mit createEmptyMovieCLip angelegten MC. Nun möcht ich die Bilder, welche immer andere MAße aufweisen im Root zentireren. Ich habe versicht via getBounds(_root).xMax und getBounds(_root).xMin die Breite zu berechenen, was ja auch funktionieren würde, wenn der leeere MC indem da Bild ist nicht immer 0 ergeben würde.

Gibt es eine Möglichkeit direkt vom Image die Maße zu nehmen?

PHP-Code:
//--> Erstellt einen Filmeffekt, welcher den Film künstlich altern lässt (Staub, Kratzer usw.)
var bildNummer:Number;
bildNummer 0;
var 
bildXML:XML;
bildXML = new XML();
bildXML.ignoreWhite true;
bildXML.onLoad = function(success:Boolean) {
    if (
success) {
        
loadBild(bildXML.firstChild);
    } else {
        
trace("Fehler");
    }
};
bildXML.load("einstellungen.xml");
onEnterFrame = function () {
    var 
zufall:Number;
    
zufall Math.random()*20;
        

    
kratzer_mc.swapDepths(1000);
    
kratzer_mc._x Math.random()*300;
    
kratzer_mc._y Math.random()*300;
    
kratzer_mc._alpha zufall*2;
    
faden_mc.swapDepths(1001);
    
faden_mc._x Math.random()*800;
    
faden_mc._xscale Math.random()*50;
    
faden_mc._alpha Math.random()*100;
    
_root.bild._alpha += 5;
};
function 
setBildAlpha() {
    
_root.bild._alpha;
}
function 
loadBild(bildErstXML:XMLNode) {
    var 
bildZweiXML:XMLNode;
    var 
bild;
    
bildZweiXML bildErstXML.childNodes[bildNummer];
    
_root.createEmptyMovieClip("bild"Number(bildNummer));
    
_root.bild.loadMovie(bildZweiXML.attributes.pfad);
    
_root.bild._alpha 0;

    
_root.bild._x = (_root._width/2);
    
_root.bild._y = (_root._height/2);
    
bildNummer++;

__________________
Gruß Michael

Geändert von xoos (07-01-2006 um 18:39 Uhr)
xoos ist offline   Mit Zitat antworten
Alt 07-01-2006, 18:40   #2 (permalink)
>>>||<<<
 
Registriert seit: Dec 2002
Ort: München
Beiträge: 208
Arbeite mal mit dem MovieClipLoader. Damit funktioniert das gut.

Code:
var loadListener:Object = new Object();
var mcLoader:MovieClipLoader = new MovieClipLoader();
mcLoader.addListener(loadListener);
mcLoader.loadClip("meinBild.jpg", mc);

loadListener.onLoadComplete = function(target_mc:MovieClip, httpStatus:Number):Void {
    trace(" target_mc._width: " + target_mc._width); 
   trace(">> httpStatus: " + httpStatus);

}
Viktor M. ist offline   Mit Zitat antworten
Alt 07-01-2006, 18:45   #3 (permalink)
nerdig working
 
Benutzerbild von michael
 
Registriert seit: Jul 2001
Ort: Hamburg
Beiträge: 5.832
mit onLoadInit statt onLoadComplete klappts noch besser
michael ist offline   Mit Zitat antworten
Alt 07-01-2006, 22:16   #4 (permalink)
Neuer User
 
Registriert seit: Apr 2004
Beiträge: 181
Also erstmal Danke für die Antworten. Funktionieren tut es trotzdem nicht. Bzw. grundsätzlich funktioniert es schon. doch von 10 Versuchen landet das Bild gerade 1 mal in der Mitte, ansonsten wird es scheinbar wahllos plaziert.

PHP-Code:
var bildNummer:Number;
bildNummer 0;
var 
bildXML:XML;
bildXML = new XML();
bildXML.ignoreWhite true;
bildXML.onLoad = function(success:Boolean) {
    if (
success) {
        
loadBild(bildXML.firstChild);
    } else {
        
trace("Fehler");
    }
};
bildXML.load("einstellungen.xml");
onEnterFrame = function () {
    var 
zufall:Number;
    
zufall Math.random()*20;
    
kratzer_mc.swapDepths(1000);
    
kratzer_mc._x Math.random()*300;
    
kratzer_mc._y Math.random()*300;
    
kratzer_mc._alpha zufall*2;
    
faden_mc.swapDepths(1001);
    
faden_mc._x Math.random()*800;
    
faden_mc._xscale Math.random()*50;
    
faden_mc._alpha Math.random()*100;
    
_root.bild._alpha += 5;
};
function 
loadBild(bildErstXML:XMLNode) {
    var 
bildZweiXML:XMLNode;
    
// MC erstellen
    
_root.createEmptyMovieClip("bild"bildNummer);
    var 
loadListener:Object = new Object();
    var 
mcLoader:MovieClipLoader = new MovieClipLoader();
    
// XML Nodes Auslesen
    
bildZweiXML bildErstXML.childNodes[bildNummer];
    
mcLoader.loadClip(bildZweiXML.attributes.pfadbild);
    
loadListener.onLoadInit = function(target_mc:MovieCliphttpStatus:Number) {
        
target_mc._x = (_root._width/2)-(target_mc._width/2);
        
target_mc._y = (_root._height/2)-(target_mc._height/2);
    };
    
mcLoader.addListener(loadListener);

Angehängte Dateien
Dateityp: zip geburtstagsfilm.zip (19,2 KB, 5x aufgerufen)
__________________
Gruß Michael
xoos ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 19:27 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele