<?php include("sample_utils.php"); // provides some utils and using mk $swfFN = "buttonSound.swf"; // swf we'll generate $sndFN = "ringout.mp3"; // sound to insert $svgFN1 = "inkscape_bt_off.svg"; // vector data for button state off $svgFN2 = "inkscape_bt_over.svg"; // button state over $svgFN3 = "inkscape_bt_down.svg"; // state down $svgFN4 = "inkscape_bt_hit.svg"; // hit $svg1 = new MKsimple_svg_reader($svgFN1); // build tag data $svgTD1 = $svg1->update_tagData(); // $svg2 = new MKsimple_svg_reader($svgFN2, "", 2); // $svgTD2 = $svg2->update_tagData(); $svg3 = new MKsimple_svg_reader($svgFN3, "", 3); // $svgTD3 = $svg3->update_tagData(); $svg4 = new MKsimple_svg_reader($svgFN4, "", 4); // $svgTD4 = $svg4->update_tagData(); $snd = new MKsound_container("", $sndFN, "", 5); // $sndTD = $snd->update_tagData(); $button = new MKbutton_container("", 6); // a fresh button $buttonTD = $button->build_from_array($shapeAr); // build states $button->set_sound_event(5, ROLL_OVER); // a sound event $buttonSoundTD = $button->update_buttonSound_tagData(); // get sound event tag data $button->move(35, 15); // place @35,15 $buttonTD = $button->build_from_array($shapeAr); // use shape array for placing an setting states $buttonPB = $button->update_place_tagData(); // place tag data $swf = new MKswf($swfFN); // a fresh swf $swf->set_stage_dimensions(200, 100); // width/height 200/100 $swf->set_backgroundColor("#33CC33"); // a kind of green as background color $swf->set_swfDir(SERVER_MKTMP); // set output directory $swf->add_tagData($svgTD1); // start to populate $swf->add_tagData($svgTD2); // $swf->add_tagData($svgTD3); // $swf->add_tagData($svgTD4); // $swf->add_tagData($sndTD); // sound tag data $swf->add_tagData($buttonTD); // button tag data $swf->add_tagData($buttonSoundTD); // button sound event tag data $swf->add_tagData($buttonPB); // place button on stage $swf->swf_output(); // save $swfHeader = $swf->fetch_assoc(); // prepare to publish $str = render_swf_box($swfHeader, $imgDir, false); $str .= "<br/><strong>" .$swfFN ." created in :<br />" .SERVER_MKTMP ."</strong>"; ?>
combining sound insertion technique and button build you may obtain both visual and sound event button, additional set_sound_event is needed and update_buttonSound_data for swf population. Another way is to use sound linkages and actionscript.
![]()