CLXIII. Shockwave Flash

Introduction

PHP a la capacité de créer des animations Shockwave Flash grâce au module de Paul Haeberli : libswf module.

Note: Le support de SWF a été ajouté en PHP 4 RC2.

La bibliothèque libswf ne propose pas de support pour Windows. Le développement de cette bibliothèque a été stoppé, et la source n'est pas disponible pour assurer le portage vers les autres systèmes.

Pour une version plus à jour d'extension SWF, regardez donc les fonctions MING .

Note: Cette extension a été déplacée dans le module » PECL et ne sera plus intégrée dans PHP à partir de PHP 5.0.0.

Pré-requis

Vous avez besoin de la bibliothèque libswf pour compiler PHP avec le support de cette extension. Vous pouvez télécharger cette bibliothèque » ftp://ftp.sgi.com/sgi/graphics/grafica/flash/ .

Installation

Une fois que vous avez libswf, tout ce qui reste à faire est de configurer PHP avec --with-swf[=DIR] où DIR est le dossier qui accueille les dossiers de include et lib. Le dossier include doit contenir le fichier swf.h file et le dossier lib doit contenir le fichier libswf.a . Si vous décompressez la distribution de libswf, les deux fichiers seront dans le même dossier. Par conséquent, vous devrez les mettre dans le dossier ad hoc manuellement.

Configuration à l'exécution

Cette extension ne définit aucune directive de configuration.

Types de ressources

Cette extension ne définit aucune ressource.

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

MOD_COLOR (entier )
MOD_MATRIX (entier )
TYPE_PUSHBUTTON (entier )
TYPE_MENUBUTTON (entier )
BSHitTest (float )
BSDown (float )
BSOver (float )
BSUp (float )
OverDowntoIdle (entier )
IdletoOverDown (entier )
OutDowntoIdle (entier )
OutDowntoOverDown (entier )
OverDowntoOutDown (entier )
OverUptoOverDown (entier )
OverUptoIdle (entier )
IdletoOverUp (entier )
ButtonEnter (entier )
ButtonExit (entier )
MenuEnter (entier )
MenuExit (entier )

Exemples

Une fois que vous avez réussi à installer PHP avec Shockwave Flash, vous pouvez créer des animations Flash avec PHP. Vous serez surpris du résultat. Essayez donc ceci :

Exemple 2679. Exemple SWF

<?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  ();
?>

Table des matières

swf_actiongeturl — Retourne l'URL d'une animation Shockwave Flash
swf_actiongotoframe — Joue un cadre puis stoppe
swf_actiongotolabel — Joue le cadre Flash spécifié
swf_actionnextframe — Avance d'un cadre
swf_actionplay — Joue l'animation Flash à partir du cadre courant
swf_actionprevframe — Recule d'un cadre
swf_actionsettarget — Fixe le contexte des actions
swf_actionstop — Arrête l'animation Flash
swf_actiontogglequality — Choisit le niveau de qualité de l'animation Flash
swf_actionwaitforframe — Ignore les actions si le cadre Flash n'est pas chargé
swf_addbuttonrecord — Contrôle la situation, l'apparence et la zone active du bouton Flash courant
swf_addcolor — Fixe la couleur globale d'addition Flash (? : the global add color)
swf_closefile — Ferme le fichier courant Shockwave Flash
swf_definebitmap — Définit une image bitmap
swf_definefont — Définit une police Flash
swf_defineline — Définit une ligne
swf_definepoly — Définit un polygone Flash
swf_definerect — Définit un rectangle
swf_definetext — Définit une chaîne de texte
swf_endbutton — Termine la définition du bouton Flash courant
swf_enddoaction — Termine l'action courante
swf_endshape — Complète la définition de la forme Flash courante
swf_endsymbol — Termine la définition de symbole
swf_fontsize — Change la taille de la police
swf_fontslant — Change l'inclinaison de la police courante
swf_fonttracking — Change l'espacement des caractères
swf_getbitmapinfo — Lit les informations sur une image
swf_getfontinfo — Retourne des informations sur la police
swf_getframe — Retourne le numéro de cadre courant
swf_labelframe — Nomme le cadre courant
swf_lookat — Définit une transformation de vue
swf_modifyobject — Modifie un objet Flash
swf_mulcolor — Fixe la couleur globale de multiplication (? : the global multiply color)
swf_nextid — Retourne le prochain identifiant d'objet libre
swf_oncondition — Décrit la transition utilisée pour déclencher une liste d'actions
swf_openfile — Ouvre un nouveau fichier Shockwave Flash
swf_ortho2 — Définit une projection orthogonale à 2 dimensions entre les coordonnées utilisateur et le port courant
swf_ortho — Définit une projection orthogonale entre les coordonnées utilisateur et le port courant
swf_perspective — Définit une projection orthogonale à 3 dimensions entre les coordonnées utilisateur et le port courant
swf_placeobject — Place un objet sur la scène
swf_polarview — Définit le point de vue de l'utilisateur en coordonnées polaires
swf_popmatrix — Dépile la matrice de transformation
swf_posround — Active l'approximation des translations d'objets Flash
swf_pushmatrix — Empile la matrice de transformations courante dans la pile
swf_removeobject — Enlève un objet
swf_rotate — Rotation de la transformation courante
swf_scale — Homothétie
swf_setfont — Change la police courante
swf_setframe — Fixe le cadre courant
swf_shapearc — Dessine un arc de cercle
swf_shapecurveto3 — Dessine une courbe Bézier cubique
swf_shapecurveto — Dessine une courbe de Bézier quadratique entre deux points
swf_shapefillbitmapclip — Choisit le mode de remplissage Flash par texture
swf_shapefillbitmaptile — Choisit le mode de remplissage par texture Flash répétée
swf_shapefilloff — Désactive le remplissage de formes Flash
swf_shapefillsolid — Fixe la couleur pour le style courant de remplissage Flash
swf_shapelinesolid — Fixe le style courant de ligne
swf_shapelineto — Dessine une ligne
swf_shapemoveto — Change la position courante
swf_showframe — Affiche le cadre courant
swf_startbutton — Commence la définition d'un bouton
swf_startdoaction — Commence la description d'une liste d'actions pour le cadre courant
swf_startshape — Commence une forme complexe
swf_startsymbol — Définit un symbole
swf_textwidth — Retourne la longueur d'une chaîne
swf_translate — Déplace la transformation courante
swf_viewport — Sélectionne une nouvelle zone pour un dessin ultérieur