Bonjour à tous et à toutes,
J'ai un formulaire d'upload d'images qui les redimensionnes et les enregistres sur mon serveur.
Pour les jpg et les png aucun problème mais quand c'est une image webp il y a un fond noir.
Quelqu'un sais pourquoi ?
Voici mon script
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
 
<?php
if($ExtensionPresumee == "png")
$ImageChoisie = imagecreatefrompng($_FILES['photoNews']['tmp_name']);
else if($ExtensionPresumee == "webp")
$ImageChoisie = imagecreatefromwebp($_FILES['photoNews']['tmp_name']);
else if($ExtensionPresumee == ("jpg" || "jpeg"))
$ImageChoisie = imagecreatefromjpeg($_FILES['photoNews']['tmp_name']);
 
$TailleImageChoisie = getimagesize($_FILES['photoNews']['tmp_name']);
$NouvelleLargeur = 800; //Largeur choisie à 100px mais modifiable
$Reduction = ( ($NouvelleLargeur * 100)/$TailleImageChoisie[0] );
$NouvelleHauteur = ( ($TailleImageChoisie[1] * $Reduction)/100 );
$NouvelleImage = imagecreatetruecolor($NouvelleLargeur , $NouvelleHauteur) or die ("Erreur");
if($ExtensionPresumee == "png")
	{
imagealphablending($NouvelleImage,FALSE);
imagesavealpha($NouvelleImage,TRUE);
	}
if($ExtensionPresumee == "webp")
	{
imagepalettetotruecolor($NouvelleImage);
imagealphablending($NouvelleImage, true);
imagesavealpha($NouvelleImage, true);
						}
imagecopyresampled($NouvelleImage, $ImageChoisie, 0,0,0,0, $NouvelleLargeur, $NouvelleHauteur, 
$TailleImageChoisie[0],$TailleImageChoisie[1]);
$photoNews = caractereValideImg($_FILES['photoNews']['name']).'';
							$NomImageChoisie = strtolower($photoNews);
							$NomImageExploitable = ''.$temps.'-'.$NomImageChoisie.'';
 
							if($ExtensionPresumee == "png")
								{
									imagepng($NouvelleImage , ''.$adresse_gr.''.$NomImageExploitable, 0);// on enregistre
									imagepng($NouvelleImage1 , ''.$adresse_moy.''.$NomImageExploitable, 0);// on enregistre
									imagepng($NouvelleImage2 , ''.$adresse_min.''.$NomImageExploitable, 0);// on enregistre
								}
							else if($ExtensionPresumee == ("jpg" || "jpeg"))
								{
									imagejpeg($NouvelleImage , ''.$adresse_gr.''.$NomImageExploitable, 100);
									imagejpeg($NouvelleImage1 , ''.$adresse_moy.''.$NomImageExploitable, 100);
									imagejpeg($NouvelleImage2 , ''.$adresse_min.''.$NomImageExploitable, 100);
								}
							else if($ExtensionPresumee == ("webp"))
								{
									imagewebp($NouvelleImage , ''.$adresse_gr.''.$NomImageExploitable, 100);
									imagewebp($NouvelleImage1 , ''.$adresse_moy.''.$NomImageExploitable, 100);
									imagewebp($NouvelleImage2 , ''.$adresse_min.''.$NomImageExploitable, 100);
								}
Je pense que c'est une connerie de filtre mais je trouve pas.
Merci à tout ceux qui pourrons m'aider.