• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flex und AIR > Flex allgemein

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 09-11-2009, 12:55   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2009
Beiträge: 12
Scale für SWFLoader Content

Hallo!

Ich habe ein Projekt bei dem ich ein SWF per SWFLoader in mein Hauptprogramm lade.
Ich möchte nun, dass das zu ladende SWF sich an die Größe des SWFLoaders anpasst.

Ich dachte wenn ich bei meinem SWF-Loader scaleContent="true" setze, würde die Größe des SWF angepasst werden. Leider ist dies nicht der Fall.

Liegt das eventuell an den Einstellungen des zu ladenden SWFs?
Welche Einstellungen muss man setzen um es skalierbar zu machen? Habe das SWF mit Catalyst aus einer Illustrator-Datei generiert.
mellusan ist offline   Mit Zitat antworten
Alt 11-11-2009, 15:34   #2 (permalink)
N00b Buddha
 
Benutzerbild von Little Buddha
 
Registriert seit: Mar 2009
Beiträge: 140
width='100%' height='100%'

dann sollte es sich scalieren zu dem überliegenden content... Am besten einen Canvas drum machen und diesen dann dem entsprechen anpassen...
Little Buddha ist offline   Mit Zitat antworten
Alt 11-11-2009, 15:39   #3 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 11.856
Was für einen Sinn hat der Canvas? Der SWFLoader verhält sich dadurch doch nicht anders, oder?
Omega Psi ist offline   Mit Zitat antworten
Alt 11-11-2009, 16:31   #4 (permalink)
N00b Buddha
 
Benutzerbild von Little Buddha
 
Registriert seit: Mar 2009
Beiträge: 140
naja wenn dem SWFLoader width und heigth 100% gibts passt es sich dementsprechend dem canvas an... und wenn du den canvas gewissen größe gibts passt sich der SWFLoader dem Canvas an...
Little Buddha ist offline   Mit Zitat antworten
Alt 11-11-2009, 16:49   #5 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 11.856
Und wieso nicht gleich den SWFLoader modifizieren?
Omega Psi ist offline   Mit Zitat antworten
Alt 11-11-2009, 16:59   #6 (permalink)
N00b Buddha
 
Benutzerbild von Little Buddha
 
Registriert seit: Mar 2009
Beiträge: 140
und an was soll der SWFLoader sich anpassen? Ich weiß ja nicht wo der SWFLoader sich befindet...

in einem ViewStack ist ein Canvas drum also passt das dann...
Little Buddha ist offline   Mit Zitat antworten
Alt 11-11-2009, 17:15   #7 (permalink)
Perverted Hermit
 
Benutzerbild von Omega Psi
 
Registriert seit: Mar 2004
Ort: Delmenhorst
Beiträge: 11.856
Man kann den SWFLoader auch anders dimensionieren. Zumal er sich immer in einen Container befindet. Und da der ViewStack nicht erwähnt wurde...

Ich würde eher darauf tippen, dass trustContent nicht auf true gesetzt ist.
Omega Psi ist offline   Mit Zitat antworten
Alt 11-11-2009, 17:21   #8 (permalink)
N00b Buddha
 
Benutzerbild von Little Buddha
 
Registriert seit: Mar 2009
Beiträge: 140
warten wir ab was der thread ersteller sagt
Little Buddha ist offline   Mit Zitat antworten
Alt 17-11-2009, 13:05   #9 (permalink)
Neuer User
 
Registriert seit: Oct 2009
Beiträge: 12
Zitat:
Zitat von Omega Psi Beitrag anzeigen
Ich würde eher darauf tippen, dass trustContent nicht auf true gesetzt ist.
trustContent steht bei mir noch auf false.
Allerdings müsste ich dafür noch ein bisschen mehr ändern, da ich sonst einen Fehler bekomme:

Verletzung der Sicherheits-Sandbox: Lokale SWF-Dateien können die Eigenschaft LoaderContext.securityDomain nicht verwenden.

Ich bin hier leider der totale noob.

Allerdings hat sich das scale Problem mit meiner neuen Zoom-Funktion erstmal erledigt.

Code:
public var ZoomStufe:Number = 0.2;

protected function zoomMinus(event:Event):void{
     var XScale:Number = swfLoader.content.scaleX - ZoomStufe;
     var YScale:Number = swfLoader.content.scaleY - ZoomStufe;
				
     if ((XScale >= ScaleMin)&&(YScale >= ScaleMin)){
          swfLoader.content.scaleX = XScale;
          swfLoader.content.scaleY = YScale;
     }
     else{ 
          swfLoader.content.scaleX = ScaleMin;
          swfLoader.content.scaleY = ScaleMin;
     }

     swfLoader.width  = LoaderWidth / swfLoader.content.scaleX;
     swfLoader.height = LoaderHeight / swfLoader.content.scaleY;			
}
Jetzt kann ich ScaleMin bzw Max so setzen wie ich es brauche.
Es funktioniert aber nur wenn ich die swfLoader.width/height am Ende der Funktion wieder setze. Sonst ist das geladene SWF irgendwann wieder größer als der Loader wenn ich ZoomPlus ausführe. Egal ob scaleContent true oder false ist.


Zu width='100%' height='100%' und Canvas:

Ich hatte zuerst nur:
<mx:SWFLoader id="swfLoader"
width="800" height="480"
scaleContent="true"
x="0" y="0"/>
Dann hab ich den Loader in ein Canvas/Group gepackt, dem Canvas width = 800 gegeben und swfLoader.width = 100%.
In dem zu ladenden SWF habe ich bei application sowohl width = 100% als auch = 800 probiert.
Konnte aber im Ergebnis keinen Unterschied feststellen.

Aber mit dem Zoom funktioniert es jetzt.

Danke!
mellusan 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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
SWFLoader und Flex Dr.Rock Flex allgemein 5 05-08-2009 09:06
SWFLoader tabIndex tabEnabled sytch Adobe AIR 1 22-12-2008 20:25
SWFLoader und swf kommunikation der_oki Flex programmieren 2 21-11-2007 17:13
SWFLoader - geladenes swf ansprechen zerlettino ActionScript 3 9 26-10-2007 00:06
Maske für swfLoader Guille Flex programmieren 0 15-06-2007 12:00


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:29 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele