AVERTISSEMENT
Ce module est EXPERIMENTAL
. Cela signifie que le comportement de ces fonctions, leurs noms et, concrètement, TOUT ce qui est documenté ici peut changer dans un futur proche, SANS PREAVIS ! Soyez-en conscient, et utilisez ce module à vos risques et périls.
Introduction
Avant tout, sachez que Ming n'est pas un acronyme. Ming est une bibliothèque open-source (LGPL) qui vous permet de créer des animations au format Flash. Ming supporte toutes les fonctionnalités de Flash 4 : les formes (shapes), les gradients, les images bitmaps (JPEG et PNG), les morphing (transformations d'une forme en une autre), les textes, actions, sprites (mini animations), le streaming MP3 et les transformations de couleurs. Le seul ajout futur est celui des événements sons.
Notez que toutes les distances spécifiées (longueurs, distances, tailles...) sont en "twips", c'est-à-dire 20 unités par pixels. C'est plus ou moins arbitraire, car le lecteur Flash fait une mise à l'échelle avec les valeurs qui lui sont fournies dans la balise embed, ou la frame courante si la balise embed n'est pas utilisée.
Ming propose de nombreux avantages par rapport à l'extension swf. Vous pouvez utiliser Ming sur tous les OS où vous pouvez compiler le code, tandis que swf est limité à Windows. Ming vous évite la déconcertante complexité du format SWF, en transformant les éléments des animations en objets PHP. Enfin, Ming est toujours en cours de développement et surveillé par son auteur : si vous souhaitez une nouvelle fonctionnalité, dites-le nous : » http://ming.sourceforge.net/
Ming et tous les objets cités ont été ajoutés en PHP 4.0.5.
Pré-requis
Pour utiliser Ming avec PHP, vous devez d'abord installer la librairy Ming. Le code source et les instructions d'installation sont disponibles sur la page d'accueil de Ming : » http://ming.sourceforge.net/
, avec des exemples un tutorial et l'actualité Ming.
Téléchargez l'archive Ming. Décompressez-la et allez dans le dossier Ming. Faites "make", puis "make install".
Cela va compiler le fichier libming.so
et l'installer dans /usr/lib/
, et copier ming.h
into /usr/include/
. Éditez la ligne PREFIX=
dans le fichier Makefile
pour indiquer votre dossier d'installation.
Installation
Exemple 1480. Compilation CGI avec PHP (Unix)
mkdir <phpdir>/ext/ming
cp php_ext/* <phpdir>/ext/ming
cd <phpdir>
./buildconf
./configure --with-ming <other config options>
Compilez et installez PHP comme d'habitude. Redémarrez votre serveur web si nécessaire.
Maintenant, soit vous ajoutez simplement extension=php_ming.so
dans votre fichier php.ini
, soit vous ajoutez la ligne dl('php_ming.so');
au début de tous vos scripts qui utilisent Ming.
Configuration à l'exécution
Cette extension ne définit aucune directive de configuration.
Types de ressources
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.
Classes pré-définies
Ces classes sont définies par cette extension, et elles ne seront disponibles que si cette extension a été compilée avec PHP, ou bien chargée dynamiquement.
Table des matières
- SWFAction
— Classe SWFAction
- SWFAction->__construct()
— Crée un nouvel objet SWFAction
- SWFBitmap
— Classe SWFBitmap
- SWFBitmap->__construct()
— Charge un objet Bitmap
- SWFBitmap->getHeight()
— Retourne la hauteur d'un bitmap
- SWFBitmap->getWidth()
— Retourne la largeur d'un bitmap
- SWFButton
— Classe SWFButton
- SWFButton->__construct()
— Crée un nouveau bouton
- SWFButton->addAction()
— Ajoute une action
- SWFButton->addASound()
— Associe un son à un bouton
- SWFButton->addShape()
— Ajoute une forme à un bouton
- SWFButton->setAction()
— Définit l'action
- SWFButton->setDown()
— Alias pour addShape(shape, SWFBUTTON_DOWN)
- SWFButton->setHit()
— Alias pour addShape(shape, SWFBUTTON_HIT)
- SWFButton->setMenu()
— Active un menu sur un bouton
- SWFButton->setOver()
— Alias pour addShape(shape, SWFBUTTON_OVER)
- SWFButton->setUp()
— Alias pour addShape(shape, SWFBUTTON_UP)
- SWFDisplayItem
— Classe SWFDisplayItem
- SWFDisplayItem->addAction()
— Ajoute ce SWFAction à l'instance SWFSprite fournie
- SWFDisplayItem->addColor()
— Ajoute une couleur à la transformation de couleur de l'élément
- SWFDisplayItem->endMask()
— Une autre façon de définir une interface MASK
- SWFDisplayItem->getRot()
- SWFDisplayItem->getX()
- SWFDisplayItem->getXScale()
- SWFDisplayItem->getXSkew()
- SWFDisplayItem->getY()
- SWFDisplayItem->getYScale()
- SWFDisplayItem->getYSkew()
- SWFDisplayItem->move()
— Déplace un objet dans les coordonnées relatives
- SWFDisplayItem->moveTo()
— Déplace un objet dans les coordonnées globales
- SWFDisplayItem->multColor()
— Multiplie la transformation de couleur d'un élément
- SWFDisplayItem->remove()
— Efface l'objet du film
- SWFDisplayItem->rotate()
— Rotation, en coordonnées relatives
- SWFDisplayItem->rotateTo()
— Tourne l'objet dans les coordonnées globales
- SWFDisplayItem->scale()
— Met à l'échelle l'objet dans des coordonnées relatives
- SWFDisplayItem->scaleTo()
— Met à l'échelle l'objet dans les coordonnées globales
- SWFDisplayItem->setDepth()
— Définit le z-order
- SWFDisplayItem->setMaskLevel()
— Définit le niveau de l'interface MASK
- SWFDisplayItem->setMatrix()
— Définit la matrice de transformation de l'élément
- SWFDisplayItem->setName()
— Définit le nom de l'objet
- SWFDisplayItem->setRatio()
— Définit le ratio de l'objet
- SWFDisplayItem->skewX()
— Définit le X-skew
- SWFDisplayItem->skewXTo()
— Définit le X-skew
- SWFDisplayItem->skewY()
— Définit le Y-skew
- SWFDisplayItem->skewYTo()
— Définit le Y-skew
- SWFFill
— Classe SWFFill
- SWFFill->moveTo()
— Déplace le motif original
- SWFFill->rotateTo()
— Définit la rotation du motif
- SWFFill->scaleTo()
— Définit l'échelle du motif
- SWFFill->skewXTo()
— Définit le motif x-skew
- SWFFill->skewYTo()
— Définit le motif y-skew
- SWFFont
— Classe SWFFont
- SWFFont->__construct()
— Charge la définition d'une police
- SWFFont->getAscent()
— Retourne la montée de la police, ou 0 si non disponible
- SWFFont->getDescent()
— Retourne la descente de la police, ou 0 si non disponible
- SWFFont->getLeading()
— Retourne l'interlignage de la police, ou 0 si non disponible
- SWFFont->getShape()
— Retourne la forme du glyphe d'un caractère, sous la forme d'une chaîne de caractères
- SWFFont->getUTF8Width()
— Calcule la largeur d'une chaîne donnée dans une police
- SWFFont->getWidth()
— Retourne la largeur de la chaîne
- SWFFontChar
— Classe SWFFontChar
- SWFFontChar->addChars()
— Ajoute des caractères à une police pour l'exportation de la police
- SWFFontChar->addUTF8Chars()
— Ajoute des caractères à une police pour l'exportation de la police
- SWFGradient
— Classe SWFGradient
- SWFGradient->__construct()
— Crée un objet gradient
- SWFGradient->addEntry()
— Ajoute une entrée dans la liste de gradient
- SWFMorph
— Classe SWFMorph
- SWFMorph->__construct()
— Crée un nouvel objet SWFMorph
- SWFMorph->getShape1()
— Récupère un gestionnaire pour une forme
- SWFMorph->getShape2()
— Récupère un gestionnaire de forme de fin
- SWFMovie
— Classe SWFMovie
- SWFMovie->__construct()
— Crée un nouvel objet vidéo, représentant une vidéo SWF version 4
- SWFMovie->add()
— Ajoute n'importe quelle donnée à une vidéo
- SWFMovie->addExport()
- SWFMovie->addFont()
- SWFMovie->importChar()
- SWFMovie->importFont()
- SWFMovie->labelFrame()
— Nomme une frame
- SWFMovie->nextFrame()
— Se déplace sur la prochaine frame d'une animation
- SWFMovie->output()
— Affiche la vidéo
- SWFMovie->remove()
— Efface une instance d'un objet depuis la liste d'affichage
- SWFMovie->save()
— Sauvegarde la vidéo SWF dans un fichier
- SWFMovie->saveToFile()
- SWFMovie->setbackground()
— Définit la couleur d'arrière plan
- SWFMovie->setDimension()
— Définit les dimensions de la vidéo
- SWFMovie->setFrames()
— Définit le nombre de frames dans l'animation
- SWFMovie->setRate()
— Définit le débit des frames de l'animation
- SWFMovie->startSound()
- SWFMovie->stopSound()
- SWFMovie->streamMP3()
— Diffuse un fichier MP3
- SWFMovie->writeExports()
- SWFPrebuiltClip
— Classe SWFPrebuiltClip
- SWFPrebuiltClip->__construct()
— Retourne un objet SWFPrebuiltClip
- SWFShape
— Classe SWFShape
- SWFShape->__construct()
— Crée un nouvel objet SWFShape
- SWFShape->addFill()
— Ajoute un motif solide à la forme
- SWFShape->drawArc()
— Trace un arc de cercle, centré sur la position courante, depuis l'angle startAngle vers l'angle endAngle, dans le sens des aiguilles d'une montre
- SWFShape->drawCircle()
— Trace un cercle, centré sur la position courante
- SWFShape->drawCubic()
— Trace une courbe de Bézier en utilisant la position courante et les trois points de contrôle
- SWFShape->drawCubicTo()
— Trace une courbe de Bézier en utilisant la position courante et les trois points de contrôle
- SWFShape->drawCurve()
— Trace une courbe (relative)
- SWFShape->drawCurveTo()
— Trace une courbe
- SWFShape->drawGlyph()
— Dessine le premier caractère d'une chaîne donnée dans la forme en utlisant la définition du glyphe pour la police donnée
- SWFShape->drawLine()
— Trace une ligne (relative)
- SWFShape->drawLineTo()
— Trace une ligne
- SWFShape->movePen()
— Déplace le stylo
- SWFShape->movePenTo()
— Déplace le stylo dans la forme
- SWFShape->setLeftFill()
— Définit la couleur de la trame de gauche
- SWFShape->setLine()
— Définit le style de la forme d'une ligne
- SWFShape->setRightFill()
— Définit la couleur de la trame de droite
- SWFSound
— Classe SWFSound
- SWFSound
— Retourne un nouvel objet SWFSound depuis un fichier donné
- SWFSoundInstance
— Classe SWFSoundInstance
- SWFSoundInstance->loopCount()
- SWFSoundInstance->loopInPoint()
- SWFSoundInstance->loopOutPoint()
- SWFSoundInstance->noMultiple()
- SWFSprite
— Classe SWFSprite
- SWFSprite->__construct()
— Crée un clip vidéo (un sprite)
- SWFSprite->add()
— Ajoute un objet à un sprite
- SWFSprite->labelFrame()
— Libellé d'une image
- SWFSprite->nextFrame()
— Déplace la prochaine image de l'animation
- SWFSprite->remove()
— Efface l'objet d'un sprite
- SWFSprite->setFrames()
— Définit le nombre total d'images dans l'animation
- SWFSprite->startSound()
- SWFSprite->stopSound()
- SWFText
— Classe SWFText
- SWFText->__construct()
— Crée un nouvel objet SWFText
- SWFText->addString()
— Dessine une chaîne de caractères
- SWFText->addUTF8String()
— Écrit le texte donné dans l'objet SWFText à la position courante, en utilisant la police, la haute, l'espacement et la couleur courants
- SWFText->getAscent()
— Retourne la montée de la police courante à sa taille courante, ou 0 si elle n'est pas disponible
- SWFText->getDescent()
— Retourne la descente de la police courante à sa taille courante, ou 0 si elle n'est pas disponible
- SWFText->getLeading()
— Retourne l'interlignage de la police courante à sa taille courante, ou 0 s'il n'est pas disponible
- SWFText->getUTF8Width()
— Calcule la largeur de la chaîne donnée dans la police et la taille courante du texte
- SWFText->getWidth()
— Calcule la largeur d'une chaîne
- SWFText->moveTo()
— Déplace le stylo
- SWFText->setColor()
— Définit la couleur courante du texte
- SWFText->setFont()
— Définit la police courante
- SWFText->setHeight()
— Définit la hauteur de la police courante
- SWFText->setSpacing()
— Définit l'espacement de la police courante
- SWFTextField
— Classe SWFTextField
- SWFTextField->__construct()
— Crée un objet champ de texte
- SWFTextField->addChars()
— Ajoute les caractères à la police qui sera disponible dans le champ texte
- SWFTextField->addString()
— Concatène la chaîne de caractères
donnée avec le champ texte
- SWFTextField->align()
— Définit l'alignement du champ texte
- SWFTextField->setBounds()
— Définit la hauteur et la largeur d'un champ texte
- SWFTextField->setColor()
— Définit la couleur d'un champ texte
- SWFTextField->setFont()
— Définit la police d'un champ texte
- SWFTextField->setHeight()
— Définit la hauteur de la police d'un champ de texte
- SWFTextField->setIndentation()
— Définit l'indentation de la première ligne
- SWFTextField->setLeftMargin()
— Définit la largeur de la marge gauche d'un champ texte
- SWFTextField->setLineSpacing()
— Définit l'espacement de ligne d'un champ texte
- SWFTextField->setMargins()
— Définit la largeur des marges d'un champ texte
- SWFTextField->setName()
— Définit le nom de la variable
- SWFTextField->setPadding()
— Définit l'espacement interne d'un champ texte
- SWFTextField->setRightMargin()
— Définit la largeur de la marge droite d'un champ texte
- SWFVideoStream
— Classe SWFVideoStream
- SWFVideoStream->__construct()
— Retourne un objet SWFVideoStream
- SWFVideoStream->getNumFrames()
- SWFVideoStream->setDimension()
- ming_keypress
— Retourne le drapeau d'action pour keyPress(char)
- ming_setcubicthreshold
— Fixe le niveau de seuil cubique
- ming_setscale
— Définit l'échelle
- ming_setswfcompression
— Définit la compression de sortie SWF
- ming_useconstants
— Utilise un jeu de constantes
- ming_useswfversion
— Définit la version SWF