Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1041 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [ PHP ] passer un jpg en noir et blanc

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[ PHP ] passer un jpg en noir et blanc

n°320996
j-'-r
Sans horraires fixe
Posté le 02-03-2003 à 01:01:53  profilanswer
 

j aimerai faire une fonction qui passerai le fichier jpg demandé en noir et blanc ( mais juste temporairment avec un header par exemple )


---------------
Perdu ? Vous êtes ici : --> *
mood
Publicité
Posté le 02-03-2003 à 01:01:53  profilanswer
 

n°321000
captain_pl​anet
Posté le 02-03-2003 à 01:17:48  profilanswer
 
n°321004
j-'-r
Sans horraires fixe
Posté le 02-03-2003 à 01:40:35  profilanswer
 

je fais planter appache avec un imagecopymergegrey, help


---------------
Perdu ? Vous êtes ici : --> *
n°321006
captain_pl​anet
Posté le 02-03-2003 à 01:43:01  profilanswer
 


quel est ton code ?

n°321042
arghbis
salops de dauphins
Posté le 02-03-2003 à 11:19:29  profilanswer
 

tu peux regarder du côté de GD sinon

n°321043
j-'-r
Sans horraires fixe
Posté le 02-03-2003 à 11:19:53  profilanswer
 

Code :
  1. header("Content-Type: image/jpg" );
  2. $RVB=imagecreatefromjpeg($img);
  3. $taille=getimagesize($img);
  4. $NB=imagecreatefromjpeg($img);
  5. imagecopymergegray($NB,$RVB,0,0,0,0,$taille[0],$taille[1],100);
  6. imagejpeg($NB);


---------------
Perdu ? Vous êtes ici : --> *
n°321048
beleg
黑社會
Posté le 02-03-2003 à 11:31:12  profilanswer
 

umm ds la doc, ya des exemples pr passer en nivo de gris ...
 
theviruskiller at hotmail dot com
07-Aug-2001 08:44  
 
Does anybody know a function to convert a 32bit JPEG image to greyscale? I've tried to do it myself by calculating the luminence value of each color and connecting that value to a grey value, but this doesn't work properly. Any suggestions??
 
 
eric at spiderws dot com
12-Aug-2001 11:45  
 
This little function does it for you:  
 

Code :
  1. <?
  2. $image_id = imageCreateFromJPEG($image);
  3. for($a=0;$a<imagecolorstotal ($image_id);$a++)
  4. {
  5. $color = ImageColorsForIndex($image_id,$i);
  6. $R=.299 * ($color['red'])+ .587 * ($color['green'])+ .114 * ($color['blue']);
  7. $G=.299 * ($color['red'])+ .587 * ($color['green'])+ .114 * ($color['blue']);
  8. $B=.299 * ($color['red'])+ .587 * ($color['green'])+ .114 * ($color['blue']);
  9. ImageColorSet($image_id, $a, $R, $G, $B);
  10. }
  11. imageJPEG($image_id,"$image" );
  12. ?>


The .299 , .578 , .114 values are estimations, and add a gamma correction to the colors. For more or less luminace in the result, you can change these values.  
 
Goodluck,  
Eric Mulders, Netherlands
 
 
rossa at studioware dot net
23-Jan-2002 08:38  
 

Code :
  1. function ConvertGreyscale($image){
  2. # this file outputs a grey version of specified image
  3. $total = ImageColorsTotal($image);
  4. for( $i=0; $i<$total; $i++){
  5.     $old = ImageColorsForIndex($image, $i);
  6.    
  7.     #trying to keep proper saturation when converting
  8.     $commongrey = (int)(($old[red] + $old[green] + $old[blue]) / 3);
  9.     ImageColorSet($image, $i, $commongrey, $commongrey, $commongrey);
  10. }
  11. }


 
http://www.php.net/manual/fr/funct [...] ecolor.php

n°321066
captain_pl​anet
Posté le 02-03-2003 à 12:29:32  profilanswer
 

J-'-R a écrit :


header("Content-Type: image/jpg" );
$img = "chemin de ton image";//au cas ou t'aurais oublié  :o  
$RVB=imagecreatefromjpeg($img);
$taille=getimagesize($img);
$NB=imagecreatefromjpeg($img);
imagecopymergegray($NB,$RVB,0,0,0,0,$taille[0],$taille[1],0);//avec 100 les couleurs sont conservées, plus on va vers 0 plus elles seront grisées
imagejpeg($NB);


 
imaginons que ce code se trouve dans la page gris.php,
tu dois ensuite l'appeler dans une autre page de la manière suivante :
 
<img src="gris.php">
 
la page gis.php sert d'image et doit être appelée comme telle


Message édité par captain_planet le 02-03-2003 à 12:30:23
n°321101
j-'-r
Sans horraires fixe
Posté le 02-03-2003 à 14:27:03  profilanswer
 

captain_planet a écrit :


 
imaginons que ce code se trouve dans la page gris.php,
tu dois ensuite l'appeler dans une autre page de la manière suivante :
 
<img src="gris.php">
 
la page gis.php sert d'image et doit être appelée comme telle


 
j avais pas oublié $img, c'est un parametre dans l url normalement genre appel du fichier <img src="gris.php3?img=test.jpg" />
 
mais le pb, c'est que ca charge... ca charge... et l image n apparait pas, il y a une image vide ( meme pas blache ) de la bonne taille ... ca charge encore et encore et ca plante appache :(
 
je v essayer le code ci-dessus


---------------
Perdu ? Vous êtes ici : --> *
n°321102
j-'-r
Sans horraires fixe
Posté le 02-03-2003 à 14:30:54  profilanswer
 

de plus je prefererais utiliser une fonction toute faite que faire une boucle sur chaque couleurs pour la metre en gris...
sinon je vous dis pas les resources et temps de calcul :(


---------------
Perdu ? Vous êtes ici : --> *
mood
Publicité
Posté le 02-03-2003 à 14:30:54  profilanswer
 

n°321764
j-'-r
Sans horraires fixe
Posté le 03-03-2003 à 17:01:19  profilanswer
 

:bounce: help


---------------
Perdu ? Vous êtes ici : --> *
n°321890
beleg
黑社會
Posté le 03-03-2003 à 17:10:59  profilanswer
 

je sais pas ce que je veux faire, mais si limage doit safficher plusieurs fois genre miniature, on la calcule une fois et on la stocke ds un fichier genre mini_image.
Si le fichier miniature est present, direct chargement du fichier, sinon calcul et apres seulement chargement. Le temps de calcul importe ds ce cas peu puisque cest fait une bonne fois pr toute.

n°321913
captain_pl​anet
Posté le 03-03-2003 à 17:18:53  profilanswer
 

J-'-R a écrit :

Code :
  1. header("Content-Type: image/jpg" );
  2. $RVB=imagecreatefromjpeg($img);
  3. $taille=getimagesize($img);
  4. $NB=imagecreatefromjpeg($img);
  5. imagecopymergegray($NB,$RVB,0,0,0,0,$taille[0],$taille[1],100);
  6. imagejpeg($NB);




ce code là marche parfaitement chez moi, alors c ptête un problème dû au serveur  :heink:  
 
t'as quoi comme erreur ?
 

n°321990
j-'-r
Sans horraires fixe
Posté le 03-03-2003 à 18:06:34  profilanswer
 

appache a rencontré une erreur et doit etre fermer... blablabla


 
en effet :(


---------------
Perdu ? Vous êtes ici : --> *
n°322047
captain_pl​anet
Posté le 03-03-2003 à 19:42:19  profilanswer
 

t'as bien la librairie gd d'installée ?

n°322177
arghbis
salops de dauphins
Posté le 03-03-2003 à 21:43:00  profilanswer
 

ben il l'a forcément, sinon php aurait gueulé!

n°322748
j-'-r
Sans horraires fixe
Posté le 04-03-2003 à 17:22:19  profilanswer
 

arghbis a écrit :

ben il l'a forcément, sinon php aurait gueulé!


oui
 

GD Support enabled  
GD Version 2.0 or higher  
FreeType Support enabled  
FreeType Linkage with freetype  
JPG Support enabled  
PNG Support enabled  
WBMP Support enabled


---------------
Perdu ? Vous êtes ici : --> *

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [ PHP ] passer un jpg en noir et blanc

 

Sujets relatifs
Script Php[PHP] Séparer une chaîne de caractères tous les X caractères ?!
[PHP] Comment organiser un concours[PHP] dirigier vers un pages x selon le bouton........
[PHP]Passer un tableau en parametre à l'URLPHP Mail() failed to connect
Problemes de PHP[PHP] récupérer valeurs multiples d'un checkbox dans un formulaire
[Borland C++ Builder 6] Déclarer BD Access, sans passer par l'ODBC Win 
Plus de sujets relatifs à : [ PHP ] passer un jpg en noir et blanc


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR