Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

Kako da od SWF-a napravim SWF ili bitmapu, ali na serveru?

  • 9 odgovora
  • 6.355 pregleda

Najnovija ↓

Kako da od SWF-a napravim SWF ili bitmapu, ali na serveru? 17.08.2004. u 02:47 · pre 270 meseci #1
Problem je sledeci:

Imam jedan SWF i potrebno mi je da u jednom trenutku uradim snapshot onoga sto se nalazi na ekranu i to snimim u fajl na serveru... U principu, potrebno mi je da dobijem nesto sto mogu da posaljem korisniku koj ise igrao sa flashom.

Ima li ko kakvu ideju? Presao sam ceo internet, i nasao samo jedan program swf2avi, ali mi ne odgovara jer ne mogu da ga poteram server-side.
Re: Kako da od SWF-a napravim SWF ili bitmapu, ali na serveru? 17.08.2004. u 16:48 · pre 270 meseci #5
Good for you. ;) Taj sajt mi je pao na pamet kad si rekao šta ti treba, pa reko' da probaš da pitaš, naši su ljudi. :)
Potpis
» Mom, mom, look what I did, mom!
» Look what I did to my hands, I broke 'em!
Re: Kako da od SWF-a napravim SWF ili bitmapu, ali na serveru? 17.08.2004. u 16:56 · pre 270 meseci #6
Objavicu ovde kako se to radi, ali moram prvo da zavrsim posao za klijenta. Preguglao sam sve i ima jako malo referenci :)


(posto me "neki" prozivaju kako ne radim nista "konstruktivno", da napisem i ja nesto korisno)
Re: Kako da od SWF-a napravim SWF ili bitmapu, ali na serveru? 12.07.2007. u 01:43 · pre 235 meseci #7
Citat:
McKracken: Objavicu ovde kako se to radi, ali moram prvo da zavrsim posao za klijenta. Preguglao sam sve i ima jako malo referenci :)


(posto me "neki" prozivaju kako ne radim nista "konstruktivno", da napisem i ja nesto korisno)

....strpljiv neki klijent.

McKracken, neradis nista konstruktivno,znas... :)

ako neko ima ideju kako se ovo radi neka je ususka ovde.

ps nisam jos ceo flash forum pregledao..
Re: Kako da od SWF-a napravim SWF ili bitmapu, ali na serveru? 13.07.2007. u 00:54 · pre 235 meseci #8
Nije u pitanju pravi snapshot već mali trik. Pogledaj html source na http://portalog.kaywa.com/ i videćeš javascript funkciju "openWin(nr)". Tu funkciju pokreće flash kad klikneš na njega, i prosleđuje parameter "nr" koji je u stvari broj od 1 do 6 u zavisnosti od x pozicije miša. Dalje js funkcija otvara popup sa adresama od
http://portalog.kaywa.com/popup1.html
do
http://portalog.kaywa.com/popup6.html
u zavisnosti od "nr" parametra
Svaka od ovih stranica je ista, osim što učitavaju različite slike, od
http://portalog.kaywa.com/img/de/miniblog_00.gif
do
http://portalog.kaywa.com/img/de/miniblog_05.gif
Što će reći da se u zavisnosti od pozicije miša otvara jedna od 6 već predefinisanih stranica odnosno slika. (Btw. ima mali bug, ako klikneš skroz desno javi će ti 404 grešku, izgleda da su zaboravili da naprave http://portalog.kaywa.com/popup6.html :-))
Inače uz pomoć php-a bi to moglo da se napravi dosta preciznije, ali samo ako je u pitanju snapshot slike, snapshot npr scene iz igre je mislim nemoguć, barem u AS 2
Potpis
/(bb|[^b]{2})/
Re: Kako da od SWF-a napravim SWF ili bitmapu, ali na serveru? 14.07.2007. u 17:15 · pre 234 meseca #10
Citat:
gordon_beneth: 
...Inače uz pomoć php-a bi to moglo da se napravi dosta preciznije, ali samo ako je u pitanju snapshot slike, snapshot npr scene iz igre je mislim nemoguć, barem u AS 2

Moram da demantujem samog sebe :-)
Postoji način da se napravi "pravi" snapshot, mada je pitanje koliko je to upotrebljivo u realnim uslovima.
Da ne dužim, evo koda (AS 2)
Code:

import flash.display.BitmapData;
sw = Stage.width;
sh = Stage.height;
var bmp:BitmapData = new BitmapData(sw, sh);
var lv:LoadVars = new LoadVars();
lv.sw = sw;
lv.sh = sh;
_root.onMouseDown = function() {
    bmp.draw(_root);
    for (i=0; i<sw; i++) {
        for (j=0; j<sh; j++) {
            color = bmp.getPixel(i, j).toString(16);
            lv[i+"_"+j] = color;
        }
    }
    lv.send("snp.php", "_blank", "POST");
};

Dakle snapshot se pravi u BitmapData objektu, ali pošto se takav objekat ne može poslati, "razlaže" se na piksele, i informacije o svakom pikselu (u stvari samo boja), sa ubacuju u LoadVars objekat, a zatim šalju snp.php fajlu, koji na osnovu tih informacijama kreira sliku. Lako je zaključiti da kod prilično opterećuje mašinu, za iole veći Stage, ali još veći je problem uploudovanja velike količine informacija na server, tako da je praktična primena prilično ograničena, tako da, ako budete isprobavali, probajte na manjem Stageu, ili prepravite kod tako da ne "hvata" ceo stage.
Da ne zaboravim, evo i php skripte
Code:

<?

header("Content-type: image/jpeg");
$width=$_POST['sw'];
$height=$_POST['sh'];
$im = @imagecreatetruecolor($width, $height)or die("Cannot Initialize new GD image stream");

for($i=0;$i<$width;$i++){
    for($j=0;$j<$height;$j++){
        $rgb=html2rgb('#'.$_POST[$i.'_'.$j]);
        $color= imagecolorallocate($im, $rgb[0],$rgb[1], $rgb[2]);
        imagesetpixel ($im, $i+1, $j+1,  $color);
    }
}
imagejpeg($im);


function html2rgb($color)
{
    if ($color[0] == '#')
        $color = substr($color, 1);

    if (strlen($color) == 6)
        list($r, $g, $b) = array($color[0].$color[1],
                                 $color[2].$color[3],
                                 $color[4].$color[5]);
    elseif (strlen($color) == 3)
        list($r, $g, $b) = array($color[0], $color[1], $color[2]);
    else
        return false;

    $r = hexdec($r); $g = hexdec($g); $b = hexdec($b);

    return array($r, $g, $b);
}
?>

Pretpostavljam da može i bolje da se napiše, ali to ostavljam nekom drugom (McKracken ??? :-)
Potpis
/(bb|[^b]{2})/
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme