Flash.jpw

  • Obecné
  • Adobe Flash
  • ActionScript 1 & 2.0
  • ActionScript 3.0
  • Adobe Flash

  • Úvod do platformy Adobe Flash
  • Základy kreslení
  • Kreslicí nástroje
  • Knihovna
  • Animační přechody
  • Publikace Flashe a vložení do HTML
  • Viz též…

  • Flash Player Version Penetration
  • Předchozí: Animační přechody
  • Publikace Flashe a vložení do HTML

    Nejčastějším finálním krokem tvorby Flashe je publikace a následné vložení do HTML stránky.

    SWF (Shockwave Flash)

    SWF je cílový soubor, určený pro přehrávání. Produkuje ho kompiler (nejen) ve Flashi.

    Kompilace jako taková je jednosměrný proces. Z cílové binárky nelze získat zdrojové pracovní soubory (FLA, AS a tak dále).

    Jak už se ale říká, vždycky se najde někdo, kdo neví, že to nejde a udělá to. SWF dekompilery tedy samozřejmě existují, s lepší či horší kvalitou výstupu - ovšem nikdy se stejnou jako byl původní zdroj.

    Flash Player

    Get Adobe Flash PlayerSWF přehrává Flash Player. Nejčastěji jako plugin prohlížeče (V IE je to ActiveX komponenta, jinak většinou NPAPI plugin).

    Do HTML se tedy vkládá stejně jako ostatní externí prvky - pomocí tagů object nebo embed.

    Test animace

    V pracovním prostředí Flashe si můžete prohlédnout pohyb animace (klávesou Enter), ale pokud animace obsahuje nějaké pokročilejší prvky (tlačítka, skripty), nebude fungovat správně.

    Řešením by bylo exportovat animaci do SWF a v externím prohlížeči ji shlédnout. Lze to však udělat rychleji příkazem "Test Movie" v nabídce "Control".

    Bandwidth profiler

    Bandwitch profiler

    Funkce "Test Movie" umožňuje nejen prohlížet animaci, ale i zjistit, kolik dat se musí načíst v každém snímku. To je užitečné vědět, protože Flash je zobrazován už během načítání.

    Právě k tomuto účelu slouží Bandwidth profiler. Zobrazíte ho volbou v menu "View"

    Tento sloupcový graf znázorňuje objem načítaných dat v jednotlivých snímcích. Jakmile sloupec překročí červeně vyznačenou mez, dojde pravděpodobně ke zpomalení framerate, což je samozřejmě nežádoucí. První snímek bývá většinou největší - v něm se načítá většina symbolů z knihovny. Aby se zabránilo počátečnímu trhání animace, je možné použít nějaký preloader, který přehrávání na potřebnou dobu pozdrží.

    Pro zkoušku pomalého načítání existuje v menu "View" volba "Show streaming". Po zaškrtnutí této volby se bude animace chovat, jako kdyby byla načítaná z webu. Rychlost tohoto virtuálního připojení můžete ovlivnit v menu "Debug"

    Exportování

    Pokud máte animaci hotovu, můžete ji exportovat do formátu SWF (nebo jiných alternativních formátů, které však nebudou umět zobrazit některé funkce) volbou "Export Movie" v menu "File". Před exportem ještě můžete upřesnit některá nastavení (viz dále).

    Publikování

    Publikování je prakticky totéž co exportování, jen je v něm možno zároveň exportovat animaci do více druhů provázaných souborů (nejčastěji pak HTML s vloženým SWF).

    K nastavení publikování slouží volba "Publish Settings" v menu "File"

    Budu věnovat pozornost nastavení SWF a HTML.

    Flash [SWF]

    Klasický flash soubor, který můžete přehrát buď v prohlížeči nebo ve Flash Playeru

    HTML dokument

    Ruční vložení Flashe do HTML

    Standardní HTML šablony exportu Flashe jsou poněkud nestřídmé, zaměříme se tedy na úplné minimum, nutné pro zobrazení SWF uvnitř HTML stránky.

    Jak už jsem zmiňoval, jsou dva způsoby.

    Pomocí tagu Embed:

    Starší způsob, podle striktních norem konsorcia nevalidní, avšak stále plně funkční.

    <embed	src="animace.swf"
    	width="550"
    	height="400"
    	wmode="opaque"
    	type="application/x-shockwave-flash"
    >
    <noembed>Alternativní obsah, třeba obrázek.</noembed>

    Atributy src a type jsou nezbytné pro zobrazení

    Pomocí tagu Object

    V uvozovkách novější způsob zápisu externího objektu. Validní i podle striktních norem, fuknčně prakticky shodný - s malými obtížemi (viz dále).

    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
    	width="550"
    	height="400">
    	<param name="movie" value="animace.swf">
    	<param name="wmode" value="opaque">
     
    	Alternativní obsah, třeba obrázek nebo <embed>.	
    </object>

    Raketový kód classid a parametr movie je nezbytný pro zobrazení.

    Zápis s classid nebude fungovat jinde než v Internet Exploreru, viz dále.

    Alternativní zápis Objectu pro ostatní prohlížeče

    V předchozím příkladě je typ specifikován atributem classid. Je to identifikátor ActiveX třídy. Asi nebude velkým překvapením, že prohlížeče neznalé ActiveX si s takovým identifikátorem nebudou vědět rady.

    <object type="application/x-shockwave-flash"
    	data="animace.swf"
    	width="550"
    	height="400">
    	<param name="movie" value="animace.swf">
    	<param name="wmode" value="opaque">
     
    	Alternativní obsah, třeba obrázek nebo <embed>.	
    </object>

    Atribut type a data a parametr movie je nezbytný pro zobrazení.

    Zde je typ objektu definován MIME typem v atributu type a cesta k souboru specifikována atributem data. Protože ovšem IE atribut data nezná, doplníme objektu i parametr movie.

    Tento způsob zápisu ovšem v IE přináší problém s postupným načítáním. Respektive nikoliv problém, ale úplnou absenci. Řešením může být načtení animace pomocným flashem nebo lépe, pomocí podmíněných komentářů.

    Tento způsob velmi podrobně popisuje David Grudl: La Trine: Jak správně vložit Flash do stránky.