<?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.7 $ --> <reference id="ref.swf"> <title>Shockwave Flash Functions</title> <titleabbrev>SWF</titleabbrev> <partintro> <section id="swf.intro"> &reftitle.intro; <para> PHP offers the ability to create Shockwave Flash files via Paul Haeberli's libswf module. </para> <note> <para> SWF support was added in PHP 4 RC2. </para> <para> The libswf does not have support for Windows. The development of that library has been stopped, and the source is not available to port it to another systems. </para> <para> For up to date SWF support take a look at the <link linkend="ref.ming">MING</link> functions. </para> </note> </section> <section id="swf.requirements"> &reftitle.required; <para> You need the libswf library to compile PHP with support for this extension. You can download libswf at <ulink url="&url.swf;">&url.swf;</ulink>. </para> </section> &reference.swf.configure; <section id="swf.configuration"> &reftitle.runtime; &no.config; </section> <section id="swf.resources"> &reftitle.resources; &no.resource; </section> &reference.swf.constants; <section id="swf.examples"> &reftitle.examples; <para> Once you've successfully installed PHP with Shockwave Flash support you can then go about creating Shockwave files from PHP. You would be surprised at what you can do, take the following code: <example> <title>SWF example</title> <programlisting role="php"> <![CDATA[ <?php swf_openfile("test.swf", 256, 256, 30, 1, 1, 1); swf_ortho2(-100, 100, -100, 100); swf_defineline(1, -70, 0, 70, 0, .2); swf_definerect(4, 60, -10, 70, 0, 0); swf_definerect(5, -60, 0, -70, 10, 0); swf_addcolor(0, 0, 0, 0); swf_definefont(10, "Mod"); swf_fontsize(5); swf_fontslant(10); swf_definetext(11, "This be Flash wit PHP!", 1); swf_pushmatrix(); swf_translate(-50, 80, 0); swf_placeobject(11, 60); swf_popmatrix(); for ($i = 0; $i < 30; $i++) { $p = $i/(30-1); swf_pushmatrix(); swf_scale(1-($p*.9), 1, 1); swf_rotate(60*$p, 'z'); swf_translate(20+20*$p, $p/1.5, 0); swf_rotate(270*$p, 'z'); swf_addcolor($p, 0, $p/1.2, -$p); swf_placeobject(1, 50); swf_placeobject(4, 50); swf_placeobject(5, 50); swf_popmatrix(); swf_showframe(); } for ($i = 0; $i < 30; $i++) { swf_removeobject(50); if (($i%4) == 0) { swf_showframe(); } } swf_startdoaction(); swf_actionstop(); swf_enddoaction(); swf_closefile(); ?> ]]> </programlisting> </example> </para> </section> </partintro> &reference.swf.functions; </reference> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t indent-tabs-mode:nil sgml-parent-document:nil sgml-default-dtd-file:"../../../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: vim600: syn=xml fen fdm=syntax fdl=2 si vim: et tw=78 syn=sgml vi: ts=1 sw=1 -->