Kantenglättung?

thefaxx

Mitglied
Hallo!

Habe ein Logo aus Photoshop in Falsh geladen und dort animiert. Leider wurden die Kanten sehr pixelig angezeigt, also habe ich das Logo nochmal direkt in Flash gebaut. Das Ergibnis ist zwar deutlich besser, allerdings sieht es noch nicht einwandfrei aus. Im Prinzip werden nur vier Vierecke gedreht. Liegt die schlecht Darstellung vielleicht an der Größe von nur 300x70 Pixel?
 
Hi,

Bitmap-Grafiken werden anders gerendert als Vektorformen. Du hast in den Bitmap-Eigenschaften mit den Einstellungen "Komprimierung" und "Glätten zulassen" rudimentären Einfluss auf das Rendering.

Ebenso wirkt sich das Bitmap-Caching (z.B. bei aktivierten Filtern) auf die Kantenglättung aus.

Um Dir genauere Tipps geben zu können, müsste ich Deine Quelldatei (am besten beide Versionen) einsehen.

Gruß
.
 
Vielen Dank!

Vielleicht kannst du mir hierbei auch noch helfen. Will die Animation am Anfang für 8 Sekunden anhalten, erst dann soll sie starten. Hab den Code am auf Frame 1 gesetzt, der Film läuft aber trotzdem los und das stop() am Ende des Filmes wird plötzlich ignoriert.

Was mache ich falsch?
Ich schicke dir gerne mal die fla-Datei, wenn du mir deine Email gibst. Am besten über ICQ: 133390685

Code:
stop();
momentchen = setInterval(function () {
_root.gotoAndStop(2);
clearInterval(momentchen);
}, 8000);
 
Zuletzt bearbeitet:
Hi,

probiers so:
Code:
stop();

if (iv != undefined) clearInterval(iv);

var iv = setInterval(this, "go", 8000);

function go() {
  clearInterval(iv);
  gotoAndStop(2);
}

Gruß
.
 
Hi,

funktioniert leider auch nicht vielleicht mache ich das auch falsch, hab nicht so viel Erfahrung mit Flash. Habe die Aktion in die Zeitleiste bei einem Layer hinzugefügt. Ist das richtig so?
 
Hi,

da Du in Deinem zweiten Posting von "gotoAndStop(2)" gesprochen hast, bin ich davon ausgegangen, Du willst nach 8 Sekunden einfach zum zweiten Frame springen und dort anhalten.

Wenn Du statt dessen die komplette Zeitleiste abspielen willst, muss die Funktion "go" so aussehen:
Code:
function go() {
  clearInterval(iv);
  play();
}

Vergiss nicht, im letzten Schlüsselbild der Zeitleiste ein "stop()" einzusetzen, sonst wiederholt sich die ganze Angelegenheit. ;)

Gruß
.
 
Will leider immer noch nicht. Der Code sieht jetzt so aus und ich hab ihn erstmal auf Layer red1 und yellow1 gelegt.

Code:
stop();

if (iv != undefined) clearInterval(iv);

var iv = setInterval(this, "go", 8000);

function go() {
  clearInterval(iv);
  play();
}

Folgende Fehlermeldung bekomme ich beim Testen.

1151:Line5: A conflict exists with definition iv in namespace internal.
1021:Line7: Duplicate function definition.
 
... Du darfst den Code auch nicht in der gleichen Zeitleiste auf verschiedenen Ebenen notierten - was erhoffst Du Dir davon? :confused:

Gruß
.
 
Zurück