Willkommen auf dem Portal für Mediengestalter
|
|
Autor |
Nachricht |
13pixelchen
Account gelöscht Threadersteller
Ort: -
|
Verfasst Sa 30.07.2005 00:31
Titel [Flash] Überblendeffekt und Slideshow mit externen Dateien |
|
|
Hi,
Ich bin absoluter Anfänger, was Flash angeht. Ich hätte mir aber zugetraut, ne Slideshow zu basteln, wenn ihr mir ein paar Tipps gebt. Der Wunsch:
Überblendungen der Bilder durch einen Helligkeits-Effekt (Aber nicht wie durch den Helligkeitsregler in Photoshop, sondern wie durch den Tonwertkorrektur-Regler, so dass die hellen Bildbereiche zuerst aus und wieder einblenden).
Die Bilder sollen extern vorliegen und in einen MC vermute ich mal eingeladen werden, so dass ich nix an der swf ändern muss bei anderen Bildern. Ebenfalls extern sollte eine kleine Textdatei mit den Links zu den Bildern liegen, die gelten, wenn man ins Flash auf das grade eingeblendete Bild klickt.
Die Reihenfolge der Texteinträge könnte sich nach Bildnummer richten, also Bild1.jpg ...
Anregungen wären zuvorkommend, wie man sowas scriptet.
|
|
|
|
|
13pixelchen
Account gelöscht Threadersteller
Ort: -
|
Verfasst Mo 01.08.2005 19:19
Titel
|
|
|
okay, ich mach den ersten Schritt.
Ich habe eine Flashdatei, eine XML Datei und ein paar Bilder (siehe unten). Die Flash Datei hat einen Scriptlayer und einen Layer, der lediglich einen MovieClip Container enthält (instanz "picture"). Das ganze sieht so aus:
Bilder im Ordner:
img01.jpg
img02.jpg
img03.jpg
XML-Datei:
Code: |
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<images>
<pic>
<image>img01.jpg</image>
<link>http://www.web.de</link>
</pic>
<pic>
<image>img02.jpg</image>
<link>http://www.web2.de</link>
</pic>
<pic>
<image>img03.jpg</image>
<link>http://www.web3.de</link>
</pic>
</images>
|
Actionscript in Frame 1 auf einem seperaten Script-Layer:
Code: |
function loadXML(loaded) {
if (loaded) {
xmlNode = this.firstChild;
image = [];
link = [];
total = xmlNode.childNodes.length;
for (i=0; i<total; i++) {
image[i] = xmlNode.childNodes[i].childNodes[0].firstChild.nodeValue;
link[i] = xmlNode.childNodes[i].childNodes[1].firstChild.nodeValue;
}
firstImage();
} else {
content = "file not loaded!";
}
}
xmlData = new XML();
xmlData.ignoreWhite = true;
xmlData.onLoad = loadXML;
xmlData.load("images.xml");
/////////////////////////////////////
listen = new Object();
listen.onKeyDown = function() {
if (Key.getCode() == Key.LEFT) {
prevImage();
} else if (Key.getCode() == Key.RIGHT) {
nextImage();
}
};
Key.addListener(listen);
link_btn.onRelease = function() {
getURL(link_location,"_self");
};
/////////////////////////////////////
p = 0;
this.onEnterFrame = function() {
filesize = picture.getBytesTotal();
loaded = picture.getBytesLoaded();
preloader._visible = true;
if (loaded != filesize) {
preloader.preload_bar._xscale = 100*loaded/filesize;
} else {
preloader._visible = false;
if (picture._alpha<100) {
picture._alpha += 10;
}
}
};
function nextImage() {
if (p<(total-1)) {
p++;
if (loaded == filesize) {
picture._alpha = 0;
picture.loadMovie(image[p], 1);
link_location = link[p];
picture_num();
}
}
}
function prevImage() {
if (p>0) {
p--;
picture._alpha = 0;
picture.loadMovie(image[p], 1);
link_location = link[p];
picture_num();
}
}
function firstImage() {
if (loaded == filesize) {
picture._alpha = 0;
picture.loadMovie(image[0], 1);
link_location = link[0];
picture_num();
}
}
function picture_num() {
current_pos = p+1;
}
|
Das sieht jetzt schlimmer aus als es ist. Jedenfalls funktioniert es, es spielt die drei Bilder mit Cursortaste als Slideshow ab. Woran ich jetzt knabbere, ist, den Alphablend abzuändern in einen color-fade, der mit setTransform funktioniert, und auch im obigen Beispiellink zu sehen ist. Die Bilder sollen beim Bildwechsel sowohl aus, als auch einblenden mit diesem Effekt. Vielleicht kann mir nun jemand weiterhelfen. In dem Script ist auch noch ein Überrest aus einem Preloader, der soll später am Anfang stehen.
Gut wäre auch, wenn die Bilder in zufälliger Reihenfolge nach X Sekunden angezeigt werden.
Zuletzt bearbeitet von am Mo 01.08.2005 19:20, insgesamt 1-mal bearbeitet
|
|
|
|
|
Anzeige
|
|
|
myel
Dabei seit: 19.01.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Di 02.08.2005 00:26
Titel
|
|
|
wie bist du denn überhaupt so weit gekommen....
post doch erstmal den link zum source script.
so einfach wird das mit dem color-fade schonmal nicht werden, das klappt nich so einfach wie mal eben alpha auf 100/0 faden.
|
|
|
|
|
pRiMUS
Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht:
|
Verfasst Mo 09.01.2006 10:21
Titel
|
|
|
ich bin auch gerade mal dabei, mich in flash bissle reinzuarbeiten und bin auf dieses script gestossen, mein problem hier liegt, das ich gerne unabhängig der original bildgrössen, gerne die bilder skaliert in der slideshow hätte (ratio natürlich beachtet)
jemand ne idee wie das funktioniert? steht da grad was auf dem schlauch.
|
|
|
|
|
tuxedo
Dabei seit: 10.10.2002
Ort: ~/
Alter: 51
Geschlecht: -
|
Verfasst Mo 09.01.2006 12:06
Titel
|
|
|
breite und höhe in das xml eintragen, auslesen und den containerfilm auf die
grösse setzen...
|
|
|
|
|
pRiMUS
Dabei seit: 09.09.2003
Ort: Vienna
Alter: 48
Geschlecht:
|
Verfasst Mo 09.01.2006 13:44
Titel
|
|
|
tuxedo hat geschrieben: | breite und höhe in das xml eintragen, auslesen und den containerfilm auf die
grösse setzen... |
ach, mehr is das nicht? k, das werde ich dann spätermal probieren. danke.
// edit:
habs mal ausprobiert. jedoch wills nicht so wie ich:
Code: |
function nextImage() {
if (p<(total-1)) {
p++;
if (loaded == filesize) {
picture._alpha = 0;
picture.width = w[p];
picture.height = h[p];
picture.loadMovie(image[p], 1);
w.text = w[p];
h.text = h[p];
desc_txt.text = description[p];
picture_num();
}
}
}
|
also das auslesen der richtigen daten aus dem xml file geht, ich lass mir w und h auf der bühne ausgeben, jedoch passt er das original bild nicht der grösse an.
vielleicht gibt mir jemand einen stoß in die richtige richtung. ich finde auch gar nirgens eine instanz die "picture" heisst, oder eine variable die so instanziiert wird.
flash ist für mich neuland, und ich hab (noch) kein buch.
danke.
Zuletzt bearbeitet von pRiMUS am Mo 09.01.2006 14:12, insgesamt 1-mal bearbeitet
|
|
|
|
|
|
|
|
Ähnliche Themen |
[Flash] Foto Slideshow mit Überblendeffekt
suche simple slideshow (überblendeffekt)
[HILFE: FLASH MX] einladen von externen Dateien
Überblendeffekt (Flash)
Externen Text in Flash reinladen
HILFE ! Einfache Flash Slideshow mit Adobe Flash
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|