Index: phpdoc/fr/functions/mcrypt.xml diff -u phpdoc/fr/functions/mcrypt.xml:1.9 phpdoc/fr/functions/mcrypt.xml:1.10 --- phpdoc/fr/functions/mcrypt.xml:1.9 Sat Jul 7 18:22:13 2001 +++ phpdoc/fr/functions/mcrypt.xml Wed Nov 14 16:29:16 2001 @@ -1,5 +1,7 @@ + + - Cryptage + Chiffrage mcrypt mcrypt @@ -8,37 +10,38 @@ Ces fonctions permettent d'accéder à la librairie mcrypt, qui dispose d'une grande variété d'algorithmes - de cryptage, tels que DES, TripleDES, Blowfish (par défaut), 3-WAY, + de chiffrage, tels que DES, TripleDES, Blowfish (par défaut), 3-WAY, SAFER-SK64, SAFER-SK128, TWOFISH, TEA, RC2 et GOST en modes CBC, OFB, CFB et ECB. De plus, elle accepte aussi RC6 et IDEA qui sont considérés comme "non libre". - Si vous compilez PHP avec la librairie libmcrypt 2.4.x, les algorithmes + Si vous compilez PHP avec la librairie libmcrypt 2.4.x, les algorithmes suivants sont supportés : CAST, LOKI97, RIJNDAEL, SAFERPLUS, - SERPENT ainsi que les chiffrements suivants : ENIGMA (cryptage), PANAMA, - RC4 et WAKE. Avec libmcrypt 2.4.x un autre mode de chiffrement est disponible : - nOFB. + SERPENT ainsi que les chiffrements suivants : ENIGMA (chiffrage), PANAMA, + RC4 et WAKE. Avec libmcrypt 2.4.x un autre mode de chiffrement + est disponible : nOFB. Pour l'utiliser, téléchargez la librairie - libmcrypt-x.x.tar.gz grâce par ici + libmcrypt-x.x.tar.gz par ici et suivez les instructions d'installations incluses. Vous aurez aussi besoin de compiler PHP avec le paramètre - pour activer cette extension. + + pour activer cette extension. - Mcrypt permet de crypter et de décrypter, en utilisant les méthodes + Mcrypt permet de chiffrer et de déchiffrer, en utilisant les méthodes mentionnées ci-dessus. Les 4 commandes importantes mcrypt_cfb, mcrypt_cbc, mcrypt_ecb et mcrypt_ofb) peuvent toutes opérer en mode MCRYPT_ENCRYPT et MCRYPT_DECRYPT. - Crypte une valeur avec un TripleDES, en mode ECB. + Chiffre une valeur avec un TripleDES, en mode ECB. <?php -$key = "Cette cle est ultra secrete"; -$input = "Rencontrons nous dans notre place secrete a 9 h 00."; +$key = "Cette cle est ultra-secrete"; +$input = "Rencontrons-nous dans notre place secrete a 9 h 00."; $encrypted_data = mcrypt_ecb(MCRYPT_TripleDES, $key, $input, MCRYPT_ENCRYPT); ?> @@ -55,7 +58,7 @@ <?php $key = "Ceci est une vraie cle secrete"; -$input = "Rendez vous à 9 heures, dans notre planque."; +$input = "Rendez-vous à 9 heures, dans notre planque."; $td = mcrypt_module_open (MCRYPT_TripleDES, "", MCRYPT_MODE_ECB, ""); $iv = mcrypt_create_iv (mcrypt_enc_get_iv_size ($td), MCRYPT_RAND); mcrypt_generic_init ($td, $key, $iv); @@ -68,9 +71,9 @@ $encrypted_data. - Mcrypt peut opérer en 4 modes de cryptage (CBC, OFB, CFB, et ECB). + Mcrypt peut opérer en 4 modes de chiffrage (CBC, OFB, CFB, et ECB). Nous allons présenter la technique d'utilisation de ces modes. Pour - plus de références et de détails, reportez vous au livre + plus de références et de détails, reportez-vous au livre suivant : Applied Cryptography par Schneier (ISBN 0-471-11709-9). @@ -89,7 +92,7 @@ - CFB (cipher feedback) est la meilleure méthode pour crypter des + CFB (cipher feedback) est la meilleure méthode pour chiffrer des flots d'octets, quand les octets doivent être encryptés un par un. @@ -103,7 +106,7 @@ nOFB (output feedback, in nbit) est comparable à OFB, mais - plus sûr, car il opère avec la taille de bloc de l'algorithme. + plus sûr, car il opère avec la taille de blocs de l'algorithme. @@ -115,8 +118,8 @@ - PHP ne supporte par encore le cryptage des flots d'octets. - Pour l'instant, PHP n'accepte que le cryptage de chaîne. + PHP ne supporte par encore le chiffrage des flots d'octets. + Pour l'instant, PHP n'accepte que le chiffrage de chaîne. Pour obtenir la liste complète des modes de chiffrement, reportez @@ -125,7 +128,7 @@ une méthode de chiffrement avec l'option MCRYPT_nomDuChiffrement. - Voici une liste non exhaustive des modes de chiffrements de l'extension + Voici une liste non exhaustive des modes de chiffrement de l'extension mcrypt. Si un chiffrement n'est pas dans cette liste, mais disponible dans la librairie, vous pouvez supposer que cette documentation est hors d'âge. @@ -307,12 +310,14 @@ - MCRYPT_TWOFISH (Pour les anciennes versions de mcrypt 2.x versions, ou mcrypt 2.4.x ) + MCRYPT_TWOFISH (Pour les anciennes versions de mcrypt 2.x versions, + ou mcrypt 2.4.x ) - MCRYPT_TWOFISH128 (TWOFISHxxx sont disponibles avec les nouvelles versions de 2.x, mais pas dans les versions 2.4.x) + MCRYPT_TWOFISH128 (TWOFISHxxx sont disponibles avec les nouvelles + versions de 2.x, mais pas dans les versions 2.4.x) @@ -340,10 +345,10 @@ Vous devez (mode CFB et OFB) ou pouvez (mode CBC) fournir un vecteur d'initialisation (IV) pour ces modes de chiffrement. IV doit être unique, et avoir la même valeur au chiffrement et au déchiffrement. - Pour des données qui seront enregistrées après encryptage, + Pour des données qui seront enregistrées après chiffrement, vous pouvez prendre le résultat d'une fonction telle que MD5, appliquée sur le nom du fichier. Sinon, vous pouvez envoyer IV avec - les données chiffrées, (reportez vous au chapitre 9.3 de + les données chiffrées, (reportez-vous au chapitre 9.3 de Applied Cryptography by Schneier (ISBN 0-471-11709-9) pour plus de détails sur le sujet). @@ -373,7 +378,7 @@ mcrypt_get_cipher_name prend le numéro de - chiffrement (avec libmcrypt 2.2.x) ou prend la nom du chiffrement + chiffrement (avec libmcrypt 2.2.x) ou prend le nom du chiffrement (avec libmcrypt 2.4.x) comme paramètre, et retourne le nom du chiffrement, ou &false;, si ce chiffrement n'existe pas. @@ -389,7 +394,7 @@ - L'exemple ci dessus va donner : + L'exemple ci-dessus va donner : TripleDES @@ -399,7 +404,7 @@ mcrypt_get_block_size - Retourne la taille de bloc d'un chiffrement. + Retourne la taille de blocs d'un chiffrement. Description @@ -416,7 +421,7 @@ mcrypt_get_block_size sert à lire la taille - de bloc du chiffrement cipher. + de blocs du chiffrement cipher. mcrypt_get_block_size prend comme argument le chiffrement @@ -488,7 +493,7 @@ La source peut être MCRYPT_RAND (générateur de nombres aléatoires système), MCRYPT_DEV_RANDOM (lecture des données depuis le fichier /dev/random) et MCRYPT_DEV_URANDOM (lecture des données - depuis le fichier /dev/urandom). Si vous utilisez MCRYPT_RAND, assurez vous de + depuis le fichier /dev/urandom). Si vous utilisez MCRYPT_RAND, assurez-vous de bien appeler srand pour initialiser le générateur de nombres aléatoires. @@ -509,7 +514,7 @@ mcrypt_cbc - Encrypte/décrypte des données en mode CBC + Chiffre/déchriffre des données en mode CBC Description @@ -542,7 +547,7 @@ libmcrypt 2.4.x. - mcrypt_cbc encrypte ou décrypte (suivant le + mcrypt_cbc chiffre ou déchiffre (suivant le mode sélectionné) les données data avec le chiffrement cipher et la clé key en mode CBC et retourne la @@ -574,7 +579,7 @@ mcrypt_cfb - Encrypte/décrypte des données en mode CFB + Chiffre/déchiffre des données en mode CFB Description @@ -605,7 +610,7 @@ libmcrypt 2.4.x. - mcrypt_cfb encrypte ou décrypte (suivant le + mcrypt_cfb chiffre ou déchiffre (suivant le mode sélectionné) les données data avec le chiffrement cipher et la clé key en mode CFB et retourne la @@ -637,7 +642,7 @@ mcrypt_ecb - Encrypte/décrypte des données en mode ECB + Chiffre/déchiffre des données en mode ECB Description @@ -667,7 +672,7 @@ libmcrypt 2.4.x. - mcrypt_ecb encrypte ou décrypte (suivant le + mcrypt_ecb chiffre ou déchiffre (suivant le mode sélectionné) les données data avec le chiffrement cipher et la clé key en mode CFB et retourne la chaîne résultant. @@ -698,7 +703,7 @@ mcrypt_ofb - Encrypte/décrypte des données en mode OFB + Chiffre/déchiffre des données en mode OFB Description @@ -729,7 +734,7 @@ libmcrypt 2.4.x. - mcrypt_ofb encrypte ou décrypte (suivant le + mcrypt_ofb chiffre ou déchiffre (suivant le mode sélectionné) les données data avec le chiffrement cipher et la clé key en mode OFB et retourne la @@ -780,7 +785,7 @@ algorithmes de chiffrement de lib_dir. mcrypt_list_algorithms prend un argument optionnel, qui spécifie le dossier qui contient tous les - algorithmes. Si il est omis, la valeur de mcrypt.algorithms_dir dans + algorithmes. S'il est omis, la valeur de mcrypt.algorithms_dir dans php.ini est utilisée. @@ -797,8 +802,8 @@ - L'exemple ci dessus va affiche tous les algorithmes supportés - dans le dossier "/usr/local/lib/libmcrypt". + L'exemple ci-dessus va afficher tous les algorithmes supportés + dans le dossier "/usr/local/lib/libmcrypt". @@ -824,7 +829,7 @@ modes de chiffrement de lib_dir. mcrypt_list_algorithms prend un argument optionnel, qui spécifie le dossier qui contient tous les - algorithmes. Si il est omis, la valeur de mcrypt.algorithms_dir dans + algorithmes. S'il est omis, la valeur de mcrypt.algorithms_dir dans php.ini est utilisée. @@ -841,8 +846,8 @@ - L'exemple ci dessus va affiche tous les modes supportés - dans le dossier "/usr/local/lib/libmcrypt". + L'exemple ci-dessus va afficher tous les modes supportés + dans le dossier "/usr/local/lib/libmcrypt". @@ -888,7 +893,7 @@ mcrypt_encrypt - Encrypte un texte + Chiffre un texte Description @@ -907,7 +912,7 @@ - mcrypt_encrypt encrypte les données, et retourne + mcrypt_encrypt chiffre les données, et retourne les données cryptées. @@ -916,13 +921,13 @@ Key est la clé utilisée pour - encrypter les données. Si elle est plus petite que nécessaire, - elle sera complétée avec des '\0'. + chiffrer les données. Si elle est plus petite que nécessaire, + elle sera complétée avec des '\0'. Data sont les données qui doivent être encryptées. Si la taille des données n'est pas de la forme - n * taille_de_bloc, elles seront complétées avec des '\0'. La + n * taille_de_bloc, elles seront complétées avec des '\0'. La valeur retournée peut être plus grande que la valeur d'origine. @@ -933,8 +938,8 @@ IV (Vecteur d'initialisation) est utilisé pour les modes CBC, CFB, OFB, et dans certains algorithmes de mode STREAM. Si vous le fournissez par le VI, alors qu'il est - nécessaire, la fonction affichera une alerte, et utilise un VI - composé de caractères '\0'. + nécessaire, la fonction affichera une alerte, et utilisera un + vecteur d'initialisation composé de caractères '\0'. @@ -950,7 +955,7 @@ ?> - L'exemple ci dessus affichera : + L'exemple ci-dessus affichera : 42 64 @@ -961,7 +966,7 @@ mcrypt_decrypt - Décrypte un texte + Déchiffre un texte Description @@ -985,13 +990,13 @@ Key est la clé utilisée pour - encrypter les données. Si elle est plus petite que nécessaire, - elle sera complétée avec des '\0'. + chiffrer les données. Si elle est plus petite que nécessaire, + elle sera complétée avec des '\0'. Data sont les données qui doivent être encryptées. Si la taille des données n'est pas de la forme - n * taille_de_bloc, elles seront complétées avec des '\0'. La + n * taille_de_bloc, elles seront complétées avec des '\0'. La valeur retournée peut être plus grande que la valeur d'origine. @@ -1003,7 +1008,7 @@ pour les modes CBC, CFB, OFB, et dans certains algorithmes de mode STREAM. Si vous le fournissez par le VI, alors qu'il est nécessaire, la fonction affichera une alerte, et utilise un VI - composé de caractères '\0'. + composé de caractères '\0'. @@ -1027,10 +1032,10 @@ mcrypt_module_open ouvre le module de l'algorithme et du mode à utiliser. - Le nom de l'algorithme est specifié par le paramètre + Le nom de l'algorithme est spécifié par le paramètre algorithm (par exemple : "twofish"), ou bien une des constantes MCRYPT_ciphername. La librairie est refermée en appelant - mcrypt_module_close, mais il n'est pas nécessaire + mcrypt_module_close, mais il n'est pas nécessaire d'appeler cette fonction si mcrypt_generic_end est utilisé. Normalement, mcrypt_module_open retourne un pointeur d'encryption, ou bien &false; en cas d'erreur. @@ -1056,7 +1061,7 @@ ?> - L'exemple ci dessus va essayer d'ouvrir le module de chiffrement par + L'exemple ci-dessus va essayer d'ouvrir le module de chiffrement par DES, dans le dossier par défaut, et le mode EBC dans le dossier /usr/lib/mcrypt-modes. @@ -1087,8 +1092,8 @@ en appelant mcrypt_enc_get_iv_size. IV est ignoré en mode ECB. IV DOIT exister en modes CFB, CBC, STREAM, nOFB et OFB. Il doit être aléatoire et unique (mais pas secret). - Le même VI doit être utilisé pour le cryptage et le - décryptage. + Le même VI doit être utilisé pour le chiffrage et le + déchiffrage. Si vous ne voulez pas l'utiliser, remplissez le de zéros, mais ce n'est pas recommandé. La fonction retourne (-1) en cas d'erreur. @@ -1102,7 +1107,7 @@ mcrypt_generic - Encrypte + Chiffre Description @@ -1114,8 +1119,8 @@ - mcrypt_generic crypte des données. - Les données sont complétées par des "\0" pour obtenir une + mcrypt_generic chiffre des données. + Les données sont complétées par des "\0" pour obtenir une taille de n fois la taille d'un bloc. Elle retourne les données encryptées. Notez que la longueur de la chaîne retournée peut être plus longue que celle passée en argument, à cause @@ -1126,7 +1131,7 @@ mdecrypt_generic - Décrypte + Déchiffre Description @@ -1138,10 +1143,11 @@ - mdecrypt_generic. Notez que la longueur de + mdecrypt_generic déchiffre les données data. + Notez que la longueur de la chaîne décryptée peut être plus longue que la chaîne originale, car elle peut avoir été - complétée par des "\0". + complétée par des "\0". @@ -1163,27 +1169,27 @@ ?> - L'exemple ci dessus montre comment vérifier que les données avant - cryptage sont bien les mêmes que celles après - cryptage/décryptage. + L'exemple ci-dessus montre comment vérifier que les données avant + chiffrage sont bien les mêmes que celles après + chiffrage/déchiffrage. mcrypt_generic_end - Termine un cryptage + Termine un chiffrage Description - bool mcrypt_generic_end + boolean mcrypt_generic_end resource td - mcrypt_generic_end termine le cryptage + mcrypt_generic_end termine le chiffrage désigné par le pointeur td. En fait, elle supprime tous les buffers, et ferme les modules utilisés. Elle retourne &false; en cas d'erreur, et &true; sinon. @@ -1193,7 +1199,7 @@ mcrypt_enc_self_test - Test un module ouvert + Teste un module ouvert Description @@ -1213,7 +1219,7 @@ mcrypt_enc_is_block_algorithm_mode - Teste le cryptage par bloc d'un mode + Teste le chiffrage par blocs d'un mode Description @@ -1233,7 +1239,7 @@ mcrypt_enc_is_block_algorithm - Test le cryptage par bloc d'un algorithme + Teste le chiffrage par blocs d'un algorithme Description @@ -1245,7 +1251,7 @@ mcrypt_enc_is_block_algorithm retourne 1 si - l'algorithme utilisé est un algorithme par bloc, et 0 + l'algorithme utilisé est un algorithme par blocs, et 0 si c'est un algorithme par flot. @@ -1253,7 +1259,7 @@ mcrypt_enc_is_block_mode - Teste si le mode retourne les données par bloc + Teste si le mode retourne les données par blocs Description @@ -1265,7 +1271,7 @@ mcrypt_enc_is_block_mode retourne 1 si - le mode retourne des blocs d'octets, ou bien 0 si il retourne + le mode retourne des blocs d'octets, ou bien 0 s'il retourne des octets (par flot). (i.e. 1 pour cbc et ecb, et 0 pour cfb et stream). @@ -1274,7 +1280,7 @@ mcrypt_enc_get_block_size - Retourne la taille de bloc d'un algorithme + Retourne la taille de blocs d'un algorithme Description @@ -1286,7 +1292,7 @@ mcrypt_enc_get_block_size retourne la taille - de blocs d'un algorithme en octets. + de blocs d'un algorithme, en octets. @@ -1329,7 +1335,7 @@ mcrypt_enc_get_supported_key_sizes retourne un tableau contenant les tailles des clés supportées par l'algorithme - désigné par td. Si il retourne un tableau + désigné par td. S'il retourne un tableau vide, c'est que toutes les clés entre 1 et mcrypt_enc_get_key_size sont acceptées par l'algorithme. @@ -1405,7 +1411,7 @@ Description - bool mcrypt_module_self_test + boolean mcrypt_module_self_test string algorithm string lib_dir @@ -1417,54 +1423,57 @@ de l'algorithme sur le système. - Retourne &true; si le test fonctionne, et &false; sinon. + mcrypt_module_self_test retourne &true; si le test + fonctionne, et &false; sinon. mcrypt_module_is_block_algorithm_mode - Indique si un mode fonctionne par bloc + Indique si un mode fonctionne par blocs Description - bool mcrypt_module_is_block_algorithm_mode + boolean mcrypt_module_is_block_algorithm_mode string mode string lib_dir - mcrypt_module_is_block_algorithm_mode retourne &true; si le mode doit être utilisé avec un algorithme par bloc, sinon - retourne 0 (i.e. 0 pour stream, et 1 pour cbc, cfb, ofb). Le paramètre - optionnel lib_dir contient le chemin jusqu'au module - de l'algorithme sur le système. + mcrypt_module_is_block_algorithm_mode retourne &true; + si le mode doit être utilisé avec un algorithme par bloc, + sinon retourne 0 (i.e. 0 pour stream, et 1 pour cbc, cfb, ofb). Le + paramètre optionnel lib_dir contient le + chemin jusqu'au module de l'algorithme sur le système. mcrypt_module_is_block_algorithm - Indique si un algorithme fonctionne par bloc + Indique si un algorithme fonctionne par blocs Description - bool mcrypt_module_is_block_algorithm + boolean mcrypt_module_is_block_algorithm string algorithm string lib_dir - mcrypt_module_is_block_algorithm retourne &true; si algorithm est un algorithme par bloc, sinon - retourne 0. Le paramètre optionnel lib_dir contient - le chemin jusqu'au module de l'algorithme sur le système. + mcrypt_module_is_block_algorithm retourne &true; + si algorithm est un algorithme par bloc, sinon + retourne 0. Le paramètre optionnel lib_dir + contient le chemin jusqu'au module de l'algorithme sur le système. - + mcrypt_module_is_block_mode Indique si un mode travaille par blocs @@ -1473,7 +1482,7 @@ Description - bool mcrypt_module_is_block_mode + boolean mcrypt_module_is_block_mode string mode string lib_dir @@ -1487,10 +1496,10 @@ - + mcrypt_module_get_algo_block_size - Retourne la taille de bloc d'un algorithme + Retourne la taille de blocs d'un algorithme Description @@ -1503,13 +1512,13 @@ mcrypt_module_get_algo_block_size retourne la taille - de bloc d'un algorithme, en octets. Le paramètre optionnel + de blocs d'un algorithme, en octets. Le paramètre optionnel lib_dir contient le chemin jusqu'au module de l'algorithme sur le système. - + mcrypt_module_get_algo_key_size Retourne la taille maximale de clé @@ -1525,14 +1534,14 @@ mcrypt_module_get_algo_key_size retourne la taille - maximale de la clé supporté par l'algorithme + maximale de la clé supportée par l'algorithme algorithm. Le paramètre optionnel lib_dir contient le chemin jusqu'au module de l'algorithme sur le système. - + mcrypt_module_get_algo_supported_key_sizes @@ -1543,13 +1552,13 @@ Description - array mcrypt_module_enc_get_algo_supported_key_sizes + array mcrypt_module_get_algo_supported_key_sizes string algorithm string lib_dir - mcrypt_module_enc_get_algo_supported_key_sizes retourne + mcrypt_module_get_algo_supported_key_sizes retourne un tableau avec les tailles des clés supportées par l'algorithme algorithm. Si le tableau retourné est vide, c'est que toutes les tailles de clé entre 1 et Index: phpdoc/fr/functions/mhash.xml diff -u phpdoc/fr/functions/mhash.xml:1.7 phpdoc/fr/functions/mhash.xml:1.8 --- phpdoc/fr/functions/mhash.xml:1.7 Tue Jul 31 07:55:17 2001 +++ phpdoc/fr/functions/mhash.xml Wed Nov 14 16:29:17 2001 @@ -1,3 +1,5 @@ + + Hash mhash @@ -35,7 +37,7 @@ ?> - Cela va produire quelque chose du type + Cela va produire quelque chose du type (Note du Traducteur : c'est le hash de la version anglaise) Le hash est d3b85d710d8f6e4e5efd4d5e67d041f9cecedafe Index: phpdoc/fr/functions/ming.xml diff -u phpdoc/fr/functions/ming.xml:1.7 phpdoc/fr/functions/ming.xml:1.8 --- phpdoc/fr/functions/ming.xml:1.7 Thu Oct 18 02:44:04 2001 +++ phpdoc/fr/functions/ming.xml Wed Nov 14 16:29:17 2001 @@ -1,3 +1,5 @@ + + Ming pour Flash Ming (Flash) @@ -6,7 +8,7 @@ Introduction - Ming est une librairie open-source (LGPL) qui vous permet de + Ming est une librairie 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 @@ -18,10 +20,10 @@ Ming n'est pas un acronyme. - Notez que toutes les distances spécifiées (longueurs, distances, - tailles...) sont en "twips", c'est-à-dire 20 unités par pixels. + 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 fournis dans la + mise à l'échelle avec les valeurs qui lui sont fournis dans la balise embed, ou la frame courante si la balise embed n'est pas utilisée. @@ -32,20 +34,19 @@ 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 : + souhaitez une nouvelle fonctionnalité, dites le lui : &email.ming;. Ming et tous les objets cités ont été ajouté en PHP 4.0.5. - Installation - Pour utiliser Ming avec PHP, vous devez d'abord installer la + Pour utiliser Ming avec PHP, vous devez d'abord installer la librairy Ming. Le code source et les instructions d'installation - sont disponible sur la page d'accueil de Ming : + sont disponible sur la page d'accueil de Ming : &url.ming;, avec des exemples un tutorial et l'actualité Ming. @@ -59,17 +60,17 @@ ming.h into /usr/include/. Editez la ligne PREFIX= dans le fichier Makefile pour indiquer votre dossier - d'installation. + d'installation. Compilation CGI avec PHP (Unix) - mkdir <phpdir>/ext/ming - cp php_ext/* <phpdir>/ext/ming - cd <phpdir> - ./buildconf - ./configure --with-ming <other config options> + 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. @@ -78,7 +79,7 @@ Compilation en module avec PHP (Unix) - téléchargez php_ming.so.gz. + téléchargez php_ming.so.gz. Décompressez le et copiez le dans votre dossier de modules PHP (vous pouvez trouver votre dossier de module PHP en utilisant la commande php-config --extension-dir). @@ -92,8 +93,8 @@ Comment utiliser Ming - Ming introduit 13 objet en PHP. Pour les utilisez, vous devez être - familez avec les objets. + Ming introduit 13 objet en PHP. Pour les utilisez, vous devez être + familier avec les objets. @@ -164,9 +165,7 @@ - - SWFMovie @@ -181,26 +180,25 @@ - swfmovie Crée un objet 'animation', + swfmovie Crée un objet 'animation', représentant une animation Flash version 4. - SWFMovie a les méthodes suivantes : + SWFMovie a les méthodes suivantes : swfmovie->output,swfmovie->save, swfmovie->add, swfmovie->remove, swfmovie->nextframe, swfmovie->setbackground, - swfmovie->setrate, swfmovie->setdimension, + swfmovie->setrate, swfmovie->setdimension, swfmovie->setframes et swfmovie->streammp3. - Des exemples d'utilisation dans : + Des exemples d'utilisation dans : swfdisplayitem->rotateto, swfshape->setline, swfshape->addfill... En fait, tous les exemples utilisent cet objet. - SWFMovie->output @@ -215,12 +213,12 @@ - swfmovie->output envoie votre animation + swfmovie->output envoie votre animation au navigateur. En PHP, faîte le précéder de la fonction header. <?php -header('Content-type: application/x-shockwave-flash'); + header('Content-type: application/x-shockwave-flash'); ?> Cela indique au navigateur que l'animation qui arrive est en @@ -231,15 +229,14 @@ swfmovie->save. - Des exemples d'utilisation dans : - swfmovie->streammp3, + Des exemples d'utilisation dans : + swfmovie->streammp3, swfdisplayitem->rotateto, - swfaction... + swfaction... En fait, tous les exemples utilisent cette méthode. - SWFMovie->save @@ -255,7 +252,7 @@ swfmovie->save sauve votre animation dans - le fichier filename. + le fichier filename. Voir aussi @@ -263,7 +260,6 @@ - SWFMovie->add @@ -278,17 +274,17 @@ - swfmovie->add ajoute l'objet instance + swfmovie->add ajoute l'objet instance dans l'animation courante. instance peut être de n'importe quel type : forme (shape), texte (text), police (font), etc... - Ils doivent être ajouté à une animation pour + Ils doivent être ajouté à une animation pour être utilisé. - Pour les objets affichables (formes, textes, boutons, sprites), - swfmovie->add retourne un objet + Pour les objets affichables (formes, textes, boutons, sprites), + swfmovie->add retourne un objet swfdisplayitem de la liste d'affichage. Ainsi, - vous pouvez ajouter la même forme plusieurs fois dans la même + vous pouvez ajouter la même forme plusieurs fois dans la même animation, et obtenir des ressources différentes pour chaque instance. @@ -296,13 +292,12 @@ Voir aussi tous les autres objets et swfmovie->remove - Des exemples d'utilisation dans : + Des exemples d'utilisation dans : swfdisplayitem->rotateto et swfshape->addfill. - SWFMovie->remove @@ -318,17 +313,16 @@ swfmovie->remove supprime l'objet - instance de la liste d'affichage, pour + instance de la liste d'affichage, pour l'animation courante. L'objet ne sera plus disponible pour être affiché ou utilisé. - Voir aussi + Voir aussi swfmovie->add. - SWFMovie->setbackground @@ -346,16 +340,15 @@ swfmovie->setbackground modifie la couleur de fond. - Pourquoi est-ce que cette fonction n'accepte pas de canal alpha? + Pourquoi est-ce que cette fonction n'accepte pas de canal alpha? (réflechissez quelques instants :-) ). En fait, cela ne serait pas si stupide : vous pouvez laisser apercevoir le fond HTML à travers l'animation. - Il y a un moyen de faire cela, mais cela ne fonctionne qu'avec IE 4. + Il y a un moyen de faire cela, mais cela ne fonctionne qu'avec IE 4. Recherchez sur le site de &url.macromedia; pour plus de détails. - SWFMovie->setrate @@ -378,7 +371,6 @@ - SWFMovie->setdimension @@ -394,13 +386,12 @@ - swfmovie->setdimension modifie les dimensions de - l'animation : width est la largeur et + swfmovie->setdimension modifie les dimensions de + l'animation : width est la largeur et height la hauteur. - SWFMovie->setframes @@ -415,12 +406,11 @@ - swfmovie->setframes modifie le nombre total d'images + swfmovie->setframes modifie le nombre total d'images dans l'animation, et le fixe à numberofframes. - SWFMovie->nextframe @@ -440,7 +430,6 @@ - SWFMovie->streammp3 @@ -456,7 +445,7 @@ swfmovie->streammp3 envoie le fichier - MP3mp3FileName en stream audio. + MP3mp3FileName en stream audio. swfmovie->streammp3 n'est pas très robuste, et se prend facilement les pieds dans le tapis (elle peut éviter la balise initiale ID3, mais c'est bien tout). @@ -472,7 +461,7 @@ Oui, vous pouvez utiliser Ming pour mettre un rock-'n-roll endiablé - dans vos animation. Evitez d'en parler à l'RIAA ou la SACEM. + dans vos animation. Evitez d'en parler à l'RIAA ou la SACEM. Exemple avec <function>swfmovie->streammp3</function> @@ -482,10 +471,8 @@ $m->streamMp3("distortobass.mp3"); // utilisez vos propres MP3 // assurez-vous d'avoir les droits - // 11.85 secondes avec 12.0 images par seconde = 142 frames $m->setFrames(142); - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -494,9 +481,7 @@ - - SWFDisplayItem @@ -514,18 +499,18 @@ swfdisplayitem crée un nouvel objet d'affichage displayitem. - C'est là que toute l'animation prend vie. Une fois que vous avez - défini une forme, un texte, un sprite ou un bouton, vous + C'est là que toute l'animation prend vie. Une fois que vous avez + défini une forme, un texte, un sprite ou un bouton, vous l'ajoutez à une animation, puis vous utilisez la ressource retournée pour déplacer, étirer, contracter, faire tourner ou incliner la forme. - SWFDisplayItem a les méthodes suivantes : + SWFDisplayItem a les méthodes suivantes : swfdisplayitem->move, - swfdisplayitem->moveto, swfdisplayitem->scaleto, - swfdisplayitem->scale, swfdisplayitem->rotate, - swfdisplayitem->rotateto, swfdisplayitem->skewxto, + swfdisplayitem->moveto, swfdisplayitem->scaleto, + swfdisplayitem->scale, swfdisplayitem->rotate, + swfdisplayitem->rotateto, swfdisplayitem->skewxto, swfdisplayitem->skewx, swfdisplayitem->skewyto swfdisplayitem->skewyto, swfdisplayitem->setdepth swfdisplayitem->remove, swfdisplayitem->setname @@ -534,7 +519,6 @@ - SWFDisplayItem->moveTo @@ -551,22 +535,21 @@ swfdisplayitem->moveto déplace la forme courante - jusqu'au point de coordonnées globales + jusqu'au point de coordonnées globales (x,y). - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->move. - SWFDisplayItem->move @@ -587,7 +570,7 @@ sa position courante. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. @@ -598,7 +581,6 @@ - SWFDisplayItem->scaleTo @@ -614,22 +596,21 @@ - swfdisplayitem->scaleto étire un objet + swfdisplayitem->scaleto étire un objet jusqu'au dimensions (x,y). - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->scale. - SWFDisplayItem->scale @@ -645,23 +626,22 @@ - swfdisplayitem->scale étire un objet + swfdisplayitem->scale étire un objet de (dx,dy), à partir de sa taille courante. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->scaleto. - SWFDisplayItem->rotateTo @@ -680,7 +660,7 @@ l'angle absoludegrees, en degrés. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. @@ -693,32 +673,25 @@ <?php $thetext = "ming!"; - $f = new SWFFont("Bauhaus 93.fdb"); - $m = new SWFMovie(); $m->setRate(24.0); $m->setDimension(2400, 1600); $m->setBackground(0xff, 0xff, 0xff); - // Les fonctions avec un nombre d'arguments sont vraiment une bonne idées. // Sincèrement! - function text($r, $g, $b, $a, $rot, $x, $y, $scale, $string) { global $f, $m; - $t = new SWFText(); $t->setFont($f); $t->setColor($r, $g, $b, $a); $t->setHeight(960); $t->moveTo(-($f->getWidth($string))/2, $f->getAscent()/2); $t->addString($string); - // On peut ajouter des propriétés comme pour une variable PHP standard // tant que les noms ne sont pas déjà pris. // e.g., vous ne pouvez pas utilisez $i->scale, car c'est une fonction. - $i = $m->add($t); $i->x = $x; $i->y = $y; @@ -726,13 +699,10 @@ $i->s = $scale; $i->rotateTo($rot); $i->scale($scale, $scale); - - // mais les modification sont locales à une fonction, donc il faut - // retourner l'objet modifié. Pas pratique... - + // mais les modification sont locales à une fonction, donc il faut + // retourner l'objet modifié. Pas pratique... return $i; } - function step($i) { $oldrot = $i->rot; @@ -740,29 +710,22 @@ $i->x = (19*$i->x + 1200)/20; $i->y = (19*$i->y + 800)/20; $i->s = (19*$i->s + 1.0)/20; - $i->rotateTo($i->rot); $i->scaleTo($i->s, $i->s); $i->moveTo($i->x, $i->y); - return $i; } - // Alors? Ça valait la peine, non? - $i1 = text(0xff, 0x33, 0x33, 0xff, 900, 1200, 800, 0.03, $thetext); $i2 = text(0x00, 0x33, 0xff, 0x7f, -560, 1200, 800, 0.04, $thetext); $i3 = text(0xff, 0xff, 0xff, 0x9f, 180, 1200, 800, 0.001, $thetext); - for($i=1; $i<=100; ++$i) { $i1 = step($i1); $i2 = step($i2); $i3 = step($i3); - $m->nextFrame(); } - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -770,12 +733,11 @@ - Voir aussi + Voir aussi swfdisplayitem->rotate. - SWFDisplayItem->Rotate @@ -790,23 +752,22 @@ - swfdisplayitem->rotate fait tourner la forme + swfdisplayitem->rotate fait tourner la forme de ddegrees degrés, en plus de sa rotation courante. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->rotateto. - SWFDisplayItem->skewXTo @@ -827,20 +788,19 @@ penché, et s'il vaut moins, ce sera plus droit. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->skewx, - swfdisplayitem->skewy and + swfdisplayitem->skewy and swfdisplayitem->skewyto. - SWFDisplayItem->skewX @@ -856,23 +816,22 @@ swfdisplayitem->skewx ajoute ddegrees - à l'inclinaison courante (x-skew). + à l'inclinaison courante (x-skew). - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->skewx, - swfdisplayitem->skewy and + swfdisplayitem->skewy and swfdisplayitem->skewyto. - SWFDisplayItem->skewYTo @@ -893,20 +852,19 @@ penché, et s'il vaut moins, ce sera plus droit. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->skewy, - swfdisplayitem->skewx and + swfdisplayitem->skewx and swfdisplayitem->skewxto. - SWFDisplayItem->skewY @@ -925,20 +883,19 @@ à l'inclinaison courante (y-skew). - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfdisplayitem->skewyto, - swfdisplayitem->skewx and + swfdisplayitem->skewx and swfdisplayitem->skewxto. - SWFDisplayItem->setDepth @@ -960,14 +917,13 @@ superposés. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - SWFDisplayItem->remove @@ -982,22 +938,21 @@ - swfdisplayitem->remove supprime cet objet de + swfdisplayitem->remove supprime cet objet de la liste d'affichage. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Voir aussi + Voir aussi swfmovie->add. - SWFDisplayItem->setName @@ -1017,14 +972,13 @@ d'un script d'action. Cela ne sert qu'avec les sprites. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - SWFDisplayItem->setRatio @@ -1044,21 +998,19 @@ morphings. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - Cet exemple simple effectue un morphing délicat de trois cercles + Cet exemple simple effectue un morphing délicat de trois cercles concentriques. Exemple <function>swfdisplayitem->setname</function> <?php - $p = new SWFMorph(); - $g = new SWFGradient(); $g->addEntry(0.0, 0, 0, 0); $g->addEntry(0.16, 0xff, 0xff, 0xff); @@ -1067,7 +1019,6 @@ $g->addEntry(0.64, 0, 0, 0); $g->addEntry(0.80, 0xff, 0xff, 0xff); $g->addEntry(1.00, 0, 0, 0); - $s = $p->getShape1(); $f = $s->addFill($g, SWFFILL_RADIAL_GRADIENT); $f->scaleTo(0.05); @@ -1077,7 +1028,6 @@ $s->drawLine(0, 240); $s->drawLine(-320, 0); $s->drawLine(0, -240); - $g = new SWFGradient(); $g->addEntry(0.0, 0, 0, 0); $g->addEntry(0.16, 0xff, 0, 0); @@ -1086,7 +1036,6 @@ $g->addEntry(0.64, 0, 0, 0); $g->addEntry(0.80, 0, 0, 0xff); $g->addEntry(1.00, 0, 0, 0); - $s = $p->getShape2(); $f = $s->addFill($g, SWFFILL_RADIAL_GRADIENT); $f->scaleTo(0.05); @@ -1097,18 +1046,15 @@ $s->drawLine(0, 240); $s->drawLine(-320, 0); $s->drawLine(0, -240); - $m = new SWFMovie(); $m->setDimension(320, 240); $i = $m->add($p); $i->moveTo(160, 120); - for($n=0; $n<=1.001; $n+=0.01) { $i->setRatio($n); $m->nextFrame(); } - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -1117,7 +1063,6 @@ - SWFDisplayItem->addColor @@ -1135,19 +1080,18 @@ - swfdisplayitem->addcolor ajoute une couleur à + swfdisplayitem->addcolor ajoute une couleur à la transformations courante. La couleur est donnée sous la forme RGB. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. - - + SWFDisplayItem->multColor @@ -1169,41 +1113,36 @@ transformation par les valeurs données. - L'objet peut être swfshape, + L'objet peut être swfshape, swfbutton, swftext ou swfsprite. Il doit avoir été ajouté à une animation avec la fonction swfmovie->add. Cet exemple simple modifie l'atmosphère de votre image, et - en fait une scène d'Halloween (utilisez un paysage ou une image claire + en fait une scène d'Halloween (utilisez un paysage ou une image claire pour un meilleur effet) Exemple avec <function>swfdisplayitem->multcolor</function> <?php - $b = new SWFBitmap("backyard.jpg"); - // Utilisez une de vos images + // Utilisez une de vos images $s = new SWFShape(); $s->setRightFill($s->addFill($b)); $s->drawLine($b->getWidth(), 0); $s->drawLine(0, $b->getHeight()); $s->drawLine(-$b->getWidth(), 0); $s->drawLine(0, -$b->getHeight()); - $m = new SWFMovie(); $m->setDimension($b->getWidth(), $b->getHeight()); - $i = $m->add($s); - for($n=0; $n<=20; ++$n) { $i->multColor(1.0-$n/10, 1.0, 1.0); $i->addColor(0xff*$n/20, 0, 0); $m->nextFrame(); } - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -1211,10 +1150,8 @@ - - + - SWFShape @@ -1232,11 +1169,11 @@ swfshape crée une nouvelle forme. - SWFShape a les méthodes suivantes : + SWFShape a les méthodes suivantes : swfshape->setline, - swfshape->addfill, swfshape->setleftfill, - swfshape->setrightfill, swfshape->movepento, - swfshape->movepen, swfshape->drawlineto, + swfshape->addfill, swfshape->setleftfill, + swfshape->setrightfill, swfshape->movepento, + swfshape->movepen, swfshape->drawlineto, swfshape->drawline, swfshape->drawcurveto et swfshape->drawcurve. @@ -1253,13 +1190,11 @@ $s->drawLineTo(6200, 200); $s->drawLineTo(6200, 4600); $s->drawCurveTo(200, 4600, 200, 200); - $m = new SWFMovie(); $m->setDimension(6400, 4800); $m->setRate(12.0); $m->add($s); $m->nextFrame(); - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -1268,7 +1203,6 @@ - SWFShape->setLine @@ -1287,17 +1221,17 @@ - swfshape->setline modifie le style de ligne de la forme. - width est la largeur de la ligne. Si + swfshape->setline modifie le style de ligne de la forme. + width est la largeur de la ligne. Si width vaut 0, le style est supprimé (et tous les - autres arguments sont ignorés). Si width > 0, - alors la couleur de la ligne devient (red, + autres arguments sont ignorés). Si width > 0, + alors la couleur de la ligne devient (red, green, blue). Les couleurs - sont représentées en RGB. Le dernier paramètre + sont représentées en RGB. Le dernier paramètre a est optionnel. - swfshape->setline accepte 1, 4 ou 5 arguments + swfshape->setline accepte 1, 4 ou 5 arguments (mais jamais 3 ou 2). @@ -1316,7 +1250,6 @@ $f3 = $s->addFill(0xff, 0xff, 0); $f4 = $s->addFill(0, 0xff, 0); $f5 = $s->addFill(0, 0, 0xff); - // erreur : il faut déclarer tous les styles avant // de les utiliser. $s->setLine(40, 0x7f, 0, 0); @@ -1324,41 +1257,32 @@ $s->setLine(40, 0x7f, 0x7f, 0); $s->setLine(40, 0, 0x7f, 0); $s->setLine(40, 0, 0, 0x7f); - $f = new SWFFont('Techno.fdb'); - $s->setRightFill($f1); $s->setLine(40, 0x7f, 0, 0); $s->drawGlyph($f, '!'); $s->movePen($f->getWidth('!'), 0); - $s->setRightFill($f2); $s->setLine(40, 0x7f, 0x3f, 0); $s->drawGlyph($f, '#'); $s->movePen($f->getWidth('#'), 0); - $s->setRightFill($f3); $s->setLine(40, 0x7f, 0x7f, 0); $s->drawGlyph($f, '%'); $s->movePen($f->getWidth('%'), 0); - $s->setRightFill($f4); $s->setLine(40, 0, 0x7f, 0); $s->drawGlyph($f, '*'); $s->movePen($f->getWidth('*'), 0); - $s->setRightFill($f5); $s->setLine(40, 0, 0, 0x7f); $s->drawGlyph($f, '@'); - $m = new SWFMovie(); $m->setDimension(3000,2000); $m->setRate(12.0); $i = $m->add($s); - // note la chaine est ici!!! $i->moveTo(1500-$f->getWidth("!#%*@")/2, 1000+$f->getAscent()/2); - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -1367,7 +1291,6 @@ - SWFShape->addFill @@ -1405,26 +1328,26 @@ red, green, blue - est une couleur (format RGB). Le dernier paramètre a + est une couleur (format RGB). Le dernier paramètre a est optionnel. - L'argument bitmap est un objet + L'argument bitmap est un objet swfbitmap. Le paramètre flags - peut être l'un des suivants : SWFFILL_CLIPPED_BITMAP ou SWFFILL_TILED_BITMAP. - Par défault, c'est SWFFILL_TILED_BITMAP. Je crois. + peut être l'un des suivants : SWFFILL_CLIPPED_BITMAP ou SWFFILL_TILED_BITMAP. + Par défault, c'est SWFFILL_TILED_BITMAP. Je crois. - L'argument gradient est un objet - swfgradient. + L'argument gradient est un objet + swfgradient. L'argument flags peut alors prendre - l'une des valeurs suivantes : - SWFFILL_RADIAL_GRADIENT ou SWFFILL_LINEAR_GRADIENT. Par défaut, + l'une des valeurs suivantes : + SWFFILL_RADIAL_GRADIENT ou SWFFILL_LINEAR_GRADIENT. Par défaut, c'est SWFFILL_LINEAR_GRADIENT. Cette fois ci, j'en suis sûr. swfshape->addfill retourne un objet swffill - à utiliser avec swfshape->setleftfill, + à utiliser avec swfshape->setleftfill, et swfshape->setrightfill décrite un peu plus loin. @@ -1441,14 +1364,11 @@ Exemple avec <function>swfshape->addfill</function> <?php - $p = new SWFMorph(); - $b = new SWFBitmap("alphafill.jpg"); // utilisez vos propres bitmaps! $width = $b->getWidth(); $height = $b->getHeight(); - $s = $p->getShape1(); $f = $s->addFill($b, SWFFILL_TILED_BITMAP); $f->moveTo(-$width/2, -$height/4); @@ -1459,32 +1379,26 @@ $s->drawLine(0, $height/2); $s->drawLine(-$width, 0); $s->drawLine(0, -$height/2); - $s = $p->getShape2(); $f = $s->addFill($b, SWFFILL_TILED_BITMAP); - // ces déplacements n'ont aucun effet $f->moveTo(-$width/4, -$height/2); $f->scaleTo(0.5, 1.0); - $s->setLeftFill($f); $s->movePenTo(-$width/4, -$height/2); $s->drawLine($width/2, 0); $s->drawLine(0, $height); $s->drawLine(-$width/2, 0); $s->drawLine(0, -$height); - $m = new SWFMovie(); $m->setDimension($width, $height); $i = $m->add($p); $i->moveTo($width/2, $height/2); - for($n=0; $n<1.001; $n+=0.03) { $i->setRatio($n); $m->nextFrame(); } - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -1493,7 +1407,6 @@ - SWFShape->setLeftFill @@ -1526,7 +1439,7 @@ swfshape->setleftfill affecte à la couleur de rastérisation de gauche, c'est-à-dire l'intérieur d'un objet, si vous définissez les contours d'un objet dans le sens inverse - des aiguilles d'une montre. L'objet de remplissage est un + des aiguilles d'une montre. L'objet de remplissage est un objet swffill, retourné par la fonction swfshape->addfill ci-dessus. @@ -1536,16 +1449,15 @@ le remplissage sur l'autre côté. - Raccourci pour - swfshape->setleftfill($s->addfill($r, $g, $b [, $a]));. + Raccourci pour + swfshape->setleftfill($s->addfill($r, $g, $b [, $a]));. - Voir aussi + Voir aussi swfshape->setrightfill. - SWFShape->setRightFill @@ -1569,16 +1481,15 @@ - Voir aussi + Voir aussi swfshape->setleftfill. Raccourci pour - swfshape->setrightfill($s->addfill($r, $g, $b [, $a]));. + swfshape->setrightfill($s->addfill($r, $g, $b [, $a]));. - SWFShape->movePenTo @@ -1594,20 +1505,19 @@ - swfshape->setrightfill déplace le stylo dans la + swfshape->movepento déplace le stylo dans la forme jusqu'au coordonnées globales (x,y). - Voir aussi + Voir aussi swfshape->movepen, swfshape->drawcurveto, - swfshape->drawlineto et + swfshape->drawlineto et swfshape->drawline. - SWFShape->movePen @@ -1623,22 +1533,21 @@ - swfshape->setrightfill déplace le stylo dans la + swfshape->movepen déplace le stylo dans la forme depuis les coordonnées (current x,current y) jusqu'au coordonnées (current x + dx, current y + dy), dans l'espace de coordonnées de la forme. - Voir aussi + Voir aussi swfshape->movepento, swfshape->drawcurveto, - swfshape->drawlineto et + swfshape->drawlineto et swfshape->drawline. - SWFShape->drawLineTo @@ -1654,22 +1563,21 @@ - swfshape->setrightfill dessine une ligne - (avec le style courant de ligne, modifié par + swfshape->drawlineto dessine une ligne + (avec le style courant de ligne, modifié par swfshape->setline) depuis le point courant - jusqu'au point (x,y) + jusqu'au point (x,y) dans l'espace de coordonnées de la forme. - Voir aussi + Voir aussi swfshape->movepento, swfshape->drawcurveto, - swfshape->movepen et + swfshape->movepen et swfshape->drawline. - SWFShape->drawLine @@ -1685,21 +1593,20 @@ - swfshape->setrightfill dessine une ligne - (avec le style courant de ligne, modifié par + swfshape->drawline dessine une ligne + (avec le style courant de ligne, modifié par swfshape->setline) depuis le point courant, et sur le déplacement de (dx,dy). - Voir aussi + Voir aussi swfshape->movepento, swfshape->drawcurveto, - swfshape->movepen et + swfshape->movepen et swfshape->drawlineto. - - + SWFShape->drawCurveTo @@ -1718,7 +1625,7 @@ swfshape->drawcurveto dessine une courbe quadratique - (avec le style courant de ligne, modifié par + (avec le style courant de ligne, modifié par swfshape->setline) depuis le point courant jusqu'au point (anchorx,anchory) en utilisant (controlx,controly) @@ -1726,15 +1633,14 @@ de contrôle, puis se dirigie sur le point d'ancrrage. - Voir aussi + Voir aussi swfshape->drawlineto, swfshape->drawline, - swfshape->movepento et + swfshape->movepento et swfshape->movepen. - - + SWFShape->drawCurve @@ -1753,7 +1659,7 @@ swfshape->drawcurve dessine une courbe - quadratique (avec le style courant de ligne, modifié par + quadratique (avec le style courant de ligne, modifié par swfshape->setline) depuis le point courant jusqu'au point (anchordx,anchordy) relativement au point courant, et en utilisant le point de @@ -1762,17 +1668,15 @@ de contrôle, puis se dirigie sur le point d'ancrrage. - Voir aussi + Voir aussi swfshape->drawlineto, swfshape->drawline, - swfshape->movepento et + swfshape->movepento et swfshape->movepen. - - SWFGradient @@ -1791,11 +1695,11 @@ Une fois que vous avez ajouté les couleurs à votre gradient, vous - pouvez l'utiliser dans des formes, avec la fonction - swfshape->addfill. + pouvez l'utiliser dans des formes, avec la fonction + swfshape->addfill. - SWFGradient a la méthode suivante : + SWFGradient a la méthode suivante : swfgradient->addentry. @@ -1805,17 +1709,13 @@ Exemple avec <function>swfgradient</function> <?php - $m = new SWFMovie(); $m->setDimension(320, 240); - $s = new SWFShape(); - // gradient noir-blanc $g = new SWFGradient(); $g->addEntry(0.0, 0, 0, 0); $g->addEntry(1.0, 0xff, 0xff, 0xff); - $f = $s->addFill($g, SWFFILL_LINEAR_GRADIENT); $f->scaleTo(0.01); $f->moveTo(160, 120); @@ -1824,16 +1724,12 @@ $s->drawLine(0, 240); $s->drawLine(-320, 0); $s->drawLine(0, -240); - $m->add($s); - $s = new SWFShape(); - // gradient radial : rouge vers transparent $g = new SWFGradient(); $g->addEntry(0.0, 0xff, 0, 0, 0xff); $g->addEntry(1.0, 0xff, 0, 0, 0); - $f = $s->addFill($g, SWFFILL_RADIAL_GRADIENT); $f->scaleTo(0.005); $f->moveTo(160, 120); @@ -1842,9 +1738,7 @@ $s->drawLine(0, 240); $s->drawLine(-320, 0); $s->drawLine(0, -240); - $m->add($s); - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -1853,7 +1747,6 @@ - SWFGradient->addEntry @@ -1874,7 +1767,7 @@ swfgradient->addentry ajoute une couleur à la liste des couleurs du gradient. ratio est un nombre - de 0 à 1, qui indique l'ordre d'apparition des couleurs. Vous devez + de 0 à 1, qui indique l'ordre d'apparition des couleurs. Vous devez ajouter les couleurs dans l'ordre croissant de ratio. @@ -1884,9 +1777,7 @@ - - SWFBitmap @@ -1903,7 +1794,7 @@ swfbitmap crée un objet bitmap à partir d'un - fichier JPEG ou DBL, nommé filename. + fichier JPEG ou DBL, nommé filename. alphafilename indique un fichier de masque à utiliser comme canal alpha sur une image JPEG. @@ -1914,17 +1805,17 @@ - SWFBitmap a les méthodes suivantes : + SWFBitmap a les méthodes suivantes : swfbitmap->getwidth et swfbitmap->getheight. Il n'est pas possible d'importer directement des images - PNG, il faut utiliser l'utilitaire de conversion + PNG, il faut utiliser l'utilitaire de conversion png2dbl pour en faire un fichier - .dbl ("define bits lossless"). La raison est que l'auteur ne + .dbl ("define bits lossless"). La raison est que l'auteur ne souhaite pas de dépendance avec la librairie PNG. Le fichier - d'autoconfiguration devrait régler ce problème, mais il n'est pas + d'autoconfiguration devrait régler ce problème, mais il n'est pas encore fait. Importation de fichiers PNG sous Ming @@ -1933,16 +1824,13 @@ $s = new SWFShape(); $f = $s->addFill(new SWFBitmap("png.dbl")); $s->setRightFill($f); - $s->drawLine(32, 0); $s->drawLine(0, 32); $s->drawLine(-32, 0); $s->drawLine(0, -32); - $m = new SWFMovie(); $m->setDimension(32, 32); $m->add($s); - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -1955,29 +1843,23 @@ Exemple avec <function>swfbitmap</function> <?php - $s = new SWFShape(); - //les fichiers .msk sont générés par l'utilitaire "gif2mask" $f = $s->addFill(new SWFBitmap("alphafill.jpg", "alphafill.msk")); $s->setRightFill($f); - $s->drawLine(640, 0); $s->drawLine(0, 480); $s->drawLine(-640, 0); $s->drawLine(0, -480); - $c = new SWFShape(); $c->setRightFill($c->addFill(0x99, 0x99, 0x99)); $c->drawLine(40, 0); $c->drawLine(0, 40); $c->drawLine(-40, 0); $c->drawLine(0, -40); - $m = new SWFMovie(); $m->setDimension(640, 480); $m->setBackground(0xcc, 0xcc, 0xcc); - // décide un fond à damier for($y=0; $y<480; $y+=40) { @@ -1986,18 +1868,14 @@ $i = $m->add($c); $i->moveTo($x, $y); } - $y+=40; - for($x=40; $x<640; $x+=80) { $i = $m->add($c); $i->moveTo($x, $y); } } - $m->add($s); - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -2006,7 +1884,6 @@ - SWFBitmap->getWidth @@ -2025,12 +1902,11 @@ en pixels. - Voir aussi + Voir aussi swfbitmap->getheight. - SWFBitmap->getHeight @@ -2049,14 +1925,12 @@ en pixels. - Voir aussi + Voir aussi swfbitmap->getwidth. - - SWFFill @@ -2067,17 +1941,16 @@ swffill vous permet de transformer une image bitmap ou un gradient. Les objets swffill - sont créé par swfshape->addfill. + sont créé par swfshape->addfill. - SWFFill a les méthodes suivantes : + SWFFill a les méthodes suivantes : swffill->moveto,swffill->scaleto, - swffill->rotateto, + swffill->rotateto, swffill->skewxto et swffill->skewyto. - SWFFill->moveTo @@ -2094,12 +1967,11 @@ swffill->moveto déplace l'origine de la forme - jusqu'au point de coordonnées globales - (x,y). + jusqu'au point de coordonnées globales + (x,y). - SWFFill->scaleTo @@ -2115,14 +1987,13 @@ - swffill->scaleto modifie l'échelle de + swffill->scaleto modifie l'échelle de la forme de x dans le sens des abscisses et y dans le sens des - ordonnées. + ordonnées. - SWFFill->rotateTo @@ -2138,12 +2009,11 @@ swffill->rotateto tourne la forme depuis - sont orientation initiale jusqu'à un angle de - degrees degrés. + sont orientation initiale jusqu'à un angle de + degrees degrés. - SWFFill->skewXTo @@ -2158,15 +2028,14 @@ - swffill->skewxto incline la forme de - x suivant l'axe des abscisses. Si x vaut 1.0, + swffill->skewxto incline la forme de + x suivant l'axe des abscisses. Si x vaut 1.0, l'inclinaison sera de 45¡ degrés, en avant. Si x vaut plus, l'inclinaison sera plus forte, et sinon, la forme sera plus droite. - SWFFill->skewYTo @@ -2181,17 +2050,15 @@ - swffill->skewyto incline la forme de + swffill->skewyto incline la forme de y suivant l'axe des abscisses. Si y - vaut 1.0, l'inclinaison sera de 45¡ degrés, en avant. Si + vaut 1.0, l'inclinaison sera de 45¡ degrés, en avant. Si x vaut plus, l'inclinaison sera plus forte, et sinon, la forme sera plus droite. - - SWFMorph @@ -2206,10 +2073,10 @@ - swfmorph crée un morphing. + swfmorph crée un morphing. - swfmorph s'appelle aussi "shape tween". + swfmorph s'appelle aussi "shape tween". C'est cet objet qui permet toutes ces superbes animations qui mettent à genou votre ordinateur. Joie! @@ -2224,7 +2091,7 @@ choses serait tellement plus simple). - SWFMorph a les méthodes suivantes : + SWFMorph a les méthodes suivantes : swfmorph->getshape1 et swfmorph->getshape1. @@ -2235,20 +2102,16 @@ <?php $p = new SWFMorph(); - $s = $p->getShape1(); $s->setLine(0,0,0,0); - /* Notez que cela se fait dans l'ordre inverse de l'ordre habituel (gauche au lieu de droite), mais je n'ai aucune idée de pourquoi... */ - $s->setLeftFill($s->addFill(0xff, 0, 0)); $s->movePenTo(-1000,-1000); $s->drawLine(2000,0); $s->drawLine(0,2000); $s->drawLine(-2000,0); $s->drawLine(0,-2000); - $s = $p->getShape2(); $s->setLine(60,0,0,0); $s->setLeftFill($s->addFill(0, 0, 0xff)); @@ -2257,20 +2120,16 @@ $s->drawLine(-1000,1000); $s->drawLine(-1000,-1000); $s->drawLine(1000,-1000); - $m = new SWFMovie(); $m->setDimension(3000,2000); $m->setBackground(0xff, 0xff, 0xff); - $i = $m->add($p); $i->moveTo(1500,1000); - for($r=0.0; $r<=1.0; $r+=0.1) { $i->setRatio($r); $m->nextFrame(); } - header('Content-type: application/x-shockwave-flash'); $m->output(); ?> @@ -2279,7 +2138,6 @@ - SWFMorph->getshape1 @@ -2294,13 +2152,12 @@ - swfmorph->getshape1 sélectionne la forme de + swfmorph->getshape1 sélectionne la forme de début de morphing. swfmorph->getshape1 retourne un - objet swfshape. + objet swfshape