Manuel PHP
Précédent |  | Suivant

# LXXII. Ming pour Flash

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-lui : ming@opaque.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/`. Editez la ligne PREFIX= dans le fichier `Makefile` pour indiquer votre dossier d'installation.

# Installation

Exemple 1. 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.

`SWFBUTTON_HIT` (entier)

`SWFBUTTON_DOWN` (entier)

`SWFBUTTON_OVER` (entier)

`SWFBUTTON_UP` (entier)

`SWFBUTTON_MOUSEUPOUTSIDE` (entier)

`SWFBUTTON_DRAGOVER` (entier)

`SWFBUTTON_DRAGOUT` (entier)

`SWFBUTTON_MOUSEUP` (entier)

`SWFBUTTON_MOUSEDOWN` (entier)

`SWFBUTTON_MOUSEOUT` (entier)

`SWFBUTTON_MOUSEOVER` (entier)

`SWFFILL_RADIAL_GRADIENT` (entier)

`SWFFILL_LINEAR_GRADIENT` (entier)

`SWFFILL_TILED_BITMAP` (entier)

`SWFFILL_CLIPPED_BITMAP` (entier)

`SWFTEXTFIELD_HASLENGTH` (entier)

`SWFTEXTFIELD_NOEDIT` (entier)

`SWFTEXTFIELD_PASSWORD` (entier)

`SWFTEXTFIELD_MULTILINE` (entier)

`SWFTEXTFIELD_WORDWRAP` (entier)

`SWFTEXTFIELD_DRAWBOX` (entier)

`SWFTEXTFIELD_NOSELECT` (entier)

`SWFTEXTFIELD_HTML` (entier)

`SWFTEXTFIELD_ALIGN_LEFT` (entier)

`SWFTEXTFIELD_ALIGN_RIGHT` (entier)

`SWFTEXTFIELD_ALIGN_CENTER` (entier)

`SWFTEXTFIELD_ALIGN_JUSTIFY` (entier)

`SWFACTION_ONLOAD` (entier)

`SWFACTION_ENTERFRAME` (entier)

`SWFACTION_UNLOAD` (entier)

`SWFACTION_MOUSEMOVE` (entier)

`SWFACTION_MOUSEDOWN` (entier)

`SWFACTION_MOUSEUP` (entier)

`SWFACTION_KEYDOWN` (entier)

`SWFACTION_KEYUP` (entier)

`SWFACTION_DATA` (entier)

# 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.

Ming introduit 13 objets en PHP. Pour les utiliser, vous devez être familier avec les objets.

swfshape

swffill

swfgradient

swfbitmap

swftext

swftextfield

swffont

swfdisplayitem

swfmovie

swfbutton

swfaction

swfmorph

swfsprite

Précédent | Sommaire | Suivant
mime_content_type | Niveau supérieur | ming_setcubicthreshold