Aller au contenu

Programmation PHP/MING

Un livre de Wikilivres.

Conceptions d'animations pour pages web

[modifier | modifier le wikicode]
Paquet logiciel

Créer les animations en Flash (.swf) se fait par des logiciels payants, cependant la librairie MING écrite en C, et utilisable en PHP, C++, Python et Ruby, permet de les générer gratuitement (mais pas d'éditer les .swf existant).

<?php
// Dessine deux boutons interactifs

  function BoutonCarré($r, $g, $b)
  {
    $s = new SWFShape();

    $s->setRightFill($s->addFill($r, $g, $b));
    $s->movePenTo(-20,-20);
    $s->drawLineTo(20,-20);
    $s->drawLineTo(20,20);
    $s->drawLineTo(-20,20);
    $s->drawLineTo(-20,-20);
    return $s;
  }

  function BoutonRond($r, $g, $b)
  {
    $s = new SWFShape();

    $s->setRightFill($s->addFill($r, $g, $b));
    $s->movePenTo(20, 20);
    $s->drawCircle(20);
    return $s;
  }

  $carré = new SWFButton();
  $carré->setUp(BoutonCarré(0xff, 0, 0));
  $carré->setOver(BoutonCarré(0, 0xff, 0));
  $carré->setDown(BoutonCarré(0, 0, 0xff));
  $carré->setHit(BoutonCarré(0, 0, 0));

  $rond = new SWFButton();
  $rond->setUp(BoutonRond(0xff, 0, 0));
  $rond->setOver(BoutonRond(0, 0xff, 0));
  $rond->setDown(BoutonRond(0, 0, 0xff));
  $rond->setHit(BoutonRond(0, 0, 0));

  $m = new SWFMovie();
  $m->setDimension(320, 240);
  $m->setBackground(0xff, 0xff, 0xff);

  $i = $m->add($carré);
  $i->moveTo(50, 50);

  $i = $m->add($rond);
  $i->moveTo(100, 50);

  header('Content-type: application/x-shockwave-flash');
  $m->output();

Logo

Depuis février 2016, Firefox bloque tous les contenus Flash par défaut, pour des raisons de sécurité. Cette technologie est donc amenée à être remplacée par JavaScript.

Liens externes

[modifier | modifier le wikicode]