IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

demande d'explication sur un code


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 98
    Points : 39
    Points
    39
    Par défaut demande d'explication sur un code
    Bonjour,
    j'ai un code php qui permet d'afficher une image prise en flash par webcam.
    est ce que quelqu'un pourrait m'expliquer le code php svp car l'affichage de l'image fonctionne bien mais j'aimerai recuperer la photos et l'enregister dans un repertoire de mon ftp afin de faire par la suite un genre de mini galerie.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    <?php
     
    function hex2in_digit($num) {
    	if (($num >= '0') && ($num <= '9'))
    		return $num;
    	return ord(strtolower($num)) - ord('a') + 10;
    }
     
    function hex2int($num) {
    	if (strlen($num) == 1) $num = "0" . $num;
    	return hex2in_digit($num[0])*16 + hex2in_digit($num[1]);
    }
     
    function normColor($c) {
    	$c = floor($c);
    	if ($c < 0) return 0;
    	if ($c > 255) return 255;
    	return $c;
    }
     
    $yv = explode(",",$_POST['yv']);
    $cb = explode(",",$_POST['cb']);
    $cr = explode(",",$_POST['cr']);
     
    $sortie = imagecreatetruecolor(260,220);
     
    $k=0;
    for($i=0;$i<120;$i++) {
    	for($j=0;$j<160;$j++){
    		$y_value = hex2int($yv[$k]);
    		//tab[i][j]=tab[i*n+j] with n the width
    		$index = floor($i/4) * 40 + floor($j/4); //40=160/4
    		$cb_value = hex2int($cb[$index]);
    		$cr_value = hex2int($cr[$index]);
     
    		$r = normColor(1 * $y_value + 0.0000 * $cb_value + 1.4022 * $cr_value + (1.4022 * -127.5));
    		$g = normColor(1 * $y_value + -0.3456 * $cb_value + -0.7145 * $cr_value + (-0.3456 * -127.5) + (-0.7145 * -127.5));
    		$b = normColor(1 * $y_value + 1.7710 * $cb_value + 0.0000 * $cr_value + (1.7710* -127.5));
     
    		$pix = imagecolorallocate($sortie, $r, $g, $b);
     
    		imagesetpixel($sortie,$j,$i,$pix);
    		$k++;
    	}
    }
    header("Content-type: image/jpeg");
    imagejpeg($sortie,"",100);
    imagedestroy($sortie);
     
    ?>
    merci [/php]

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    1 576
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 1 576
    Points : 2 440
    Points
    2 440
    Par défaut
    Bonsoir,
    hex2in_digit effectue une transformation hexadécimal->chiffre entre 1 et 10
    hex2int une transformation hexa->entier
    normcolor arrondit les chiffres et les maintient entre 0 et 255 (valeur des pixels dans les images RVB)
    le reste récupère la valeur en YUV des pixels depuis une requête post et s'en sert pour créer une image jpeg.

    Pour enregistrer le jpeg, tu utilises:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    imagejpeg($sortie,$emplacement,100);
    avec $emplacement = le nom de l'image et l'emplacement où tu veux enregistrer l'image.

    edit : oublie pas l'extension du fichier dans $emplacement.

Discussions similaires

  1. Demande d'explication sur ce code
    Par lilp1 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 09/06/2009, 16h58
  2. demande d'explication sur un code
    Par Zilfi63 dans le forum VBA Access
    Réponses: 4
    Dernier message: 08/06/2009, 17h05
  3. demande d'explication sur du code
    Par olaxius dans le forum wxPython
    Réponses: 2
    Dernier message: 17/01/2008, 08h40
  4. [final]demande d'explication sur ce mot-clé
    Par Invité dans le forum Langage
    Réponses: 10
    Dernier message: 18/04/2006, 11h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo