• beyond tellerrand – play. Register Now!
Zurück   Flashforum > Flash > Flash Einsteiger

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 28-05-2006, 13:19   #1 (permalink)
Neuer User
 
Registriert seit: May 2006
Beiträge: 80
Bild skaliert und zentriert anzeigen lassen

Hallo,

bisher bin ich soweit, dass ich mir ein Foto im Vollbild in meinem Projektor anzeigen lassen kann. Nur ist dieses Bild dann weder auf die richtige Größe skaliert (viel zu groß), noch wird es zentriert angezeigt. Wie schaffe ich das Skalieren und das zentrierte Anzeigen auf der Bühne. Mein Code sieht bis jetzt folgendermaßen aus:

PHP-Code:
fscommand ("fullscreen"true);
fscommand ("allowscale"false);
fscommand ("showmenu"false);

createEmptyMovieClip("meinMC_mc"1);
var 
my_mcLoader:MovieClipLoader = new MovieClipLoader();

my_mcLoader.loadClip("1.jpg"meinMC_mc); 
Ich weiß, dass ich mir mit Stage.width bzw. Stage.height die Größe der Bühne anzeigen lassen kann. Ich weiß allerdings nicht, wie ich das verwerten kann. Wie kann ich mein Bild dann skalieren lassen? Muss ich das auch von der Bühnengröße abhängig machen?
Bitte um Hilfe, kann jemand meinen Code kurz so ergänzen, dass es klappt?
Vielen Dank,

Fabian
Fabian_A ist offline   Mit Zitat antworten
Alt 28-05-2006, 13:21   #2 (permalink)
Flashworker
 
Benutzerbild von sebastian
 
Registriert seit: Nov 2001
Ort: Wiesbaden
Beiträge: 10.944
Schau dir das Scale Objekt noch etwas genauer an, d.h. "scaleMode".

Und zum zentrieren dann einfach Stage.width und Strage.height benutzen
sebastian ist offline   Mit Zitat antworten
Alt 28-05-2006, 13:37   #3 (permalink)
Neuer User
 
Registriert seit: May 2006
Beiträge: 80
Tut mir leid, damit kann ich nicht wirklich etwas anfangen. Könnte mir irgendwer kurz einen Codeschnippsel für die Verwendung von scaleMode bzw. Stage.width und .heigt posten?
Hat denn scaleMode überhaupt eine Auswirkung auf meine Offline Projektor-Datei im Vollbild?

Ihr würdet mir sehr helfen,
danke, Fabian

Geändert von Fabian_A (28-05-2006 um 13:42 Uhr)
Fabian_A ist offline   Mit Zitat antworten
Alt 28-05-2006, 13:57   #4 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Knick, knack.
PHP-Code:
fscommand ("fullscreen"true);

Stage.align 'TL'
Stage.showMenu false
var sX:Number System.capabilities.screenResolutionX;
var 
sY:Number System.capabilities.screenResolutionY;
this.createEmptyMovieClip("meinMC_mc"1);
var 
my_mcLoader:MovieClipLoader = new MovieClipLoader();
var 
my_listener:Object = new Object()
my_listener.onLoadInit = function  ( ref:MovieClip 
{
    
ref._x Math.roundsX/ref._width/);
    
ref._y Math.roundsY/ref._height/);
}
my_mcLoader.addListenermy_listener )

my_mcLoader.loadClip("1.jpg"meinMC_mc); 
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk ist offline   Mit Zitat antworten
Alt 28-05-2006, 14:31   #5 (permalink)
Neuer User
 
Registriert seit: May 2006
Beiträge: 80
Vielen Dank schonmal.
Allerdings bin ich noch nicht ganz fertig, da mein Bild zwar in der Höhe zentriert erscheint, doch sich zu weit rechts auf der Bühne befindet. Woran kann das liegen?
Und, wie skaliere ich mein Bild, sodass es in einem bestimmten Verhältnis genau so klein wird, dass es gut auf den Bildschirm passt?

P.S.: Wenn ich
PHP-Code:
Stage.align "TL"
in z.B. "BR" ändere, ändert sich an der Postition des Bildes auf der Bühne überhaupt nichts. Ist das normal?

Danke nochmal,

Fabian
Fabian_A ist offline   Mit Zitat antworten
Alt 28-05-2006, 15:43   #6 (permalink)
Neuer User
 
Registriert seit: May 2006
Beiträge: 80
Okay, vielen vielen Dank, jetzt geht es, nachdem ich das Projekt nochmal neu angelegt habe.
Nur wie kann ich mein Bild so skalieren lassen, dass es auf dem Bildschirm in der richtigen Größe angezeigt wird?

Danke im Voraus,

Fabian
Fabian_A ist offline   Mit Zitat antworten
Alt 28-05-2006, 16:15   #7 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Was verstehst du denn unter der richtigen Größe?
Es gibt doch die Skaliereigenschaften, die auch in der Flash-Hilfe dokumentiert sind.
PHP-Code:
my_listener.onLoadInit = function  ( ref:MovieClip 
{
    
ref._xscale ref._yscale 50;

    
ref._x Math.roundsX/ref._width/);
    
ref._y Math.roundsY/ref._height/);


__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk ist offline   Mit Zitat antworten
Alt 28-05-2006, 17:23   #8 (permalink)
Neuer User
 
Registriert seit: May 2006
Beiträge: 80
Danke, ich wusste schon, dass es mit dieser Funktion zu realiseren ist, aber ich würde es auch gerne für jede Bildschirmauflösung in der passenden Größe haben, die genau auf die Bildschirmgröße zugeschnitten ist, sodass es in seiner Höhe z.B. oben und unten 100 Pixel Platz hat und die Breite dann in der richtigen Proportion mitskaliert wird. D.h. bei einer Auflösung von 1600 x 1200 Px wird es nur auf _xscale = 80 skaliert, bei einer Auflösung von 1024 x 768 Px wird es dann auf _xscale = 50 skaliert, sodass es immer den Bildschirm ausnutzt und nur so weit wie nötig skaliert wird.
Wie ist so etwas zu realisieren? Danke für Vorschläge und dafür, dass meine Fragen mit so viel Geduld ertragen werden.

Fabian
Fabian_A ist offline   Mit Zitat antworten
Alt 28-05-2006, 17:40   #9 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Hast deine Frage ja schon selbst beantwortet.
PHP-Code:
var sX:Number System.capabilities.screenResolutionX;
var 
sY:Number System.capabilities.screenResolutionY;
function 
screenScale ref:MovieClip ):Void
{
   if( 
sX <= 1024 ref._xscale ref._yscale 40;
   else if( 
sX >= 1280 && sX 1600 ref._xscale ref._yscale 50;
   else 
ref._xscale ref._yscale 60;
}

my_listener.onLoadInit = function  ( ref:MovieClip ):Void
{
    
screenScale ref );

    
ref._x Math.roundsX/ref._width/);
    
ref._y Math.roundsY/ref._height/);


Die prozentuale Berechnung überlasse ich dann dir.
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk 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 02:49 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele