Le Mon, 08 Dec 2008 00:29:40 +0000, Y a personne a écrit :
'lut,
-Générer une image de par ex: 300*300, ca c'est ok -réduire une image
avec des proportions et si elle est plus petite que 300*300 faire en
sorte que ce qui est entre l'image et la bordure soit transparent. Et il
est toujours noir
As-tu défini une couleur, pour cet espace entre l'image et la bordure ?
Si non, remplis ton image avec une couleur, avant d'y coller l'image
redimentionnée.
Après, moi, je fais comme ça :
// J'importe mon image sous le nom de $img_in
// je créé $img_out, qui est une image vierge
// $img_out est l'image qui sera affichée
// j'attribue une couleur de fond à $img_out
// Je manipule img_in en fonction de mes besoin
// je colle img_in dans img_out (imagecopyresampled)
// La couleur transparente est appliquée en dernier lieu,
// après toutes les autres manipulations sur l'image
// On cherche d'abord la couleur qu'on veut
// transparente dans l'image : (ici une sorte de rose pâle)
$colorTransparent=imageColorclosest($img_out,255,240,240);
// et on la déclare transparente
imagecolortransparent($img_out,$colorTransparent);
Ca donne un truc comme ça :
http://www.nancy-guide.net/photographies/vignette-villa-bergeret-vitrail-
Ecole-de-Nancy-Jacques-Gruber-100378.jpg
(ne pas se fier à l'extension, c'est une image png. :-)
Une autre solution serait peut-être de simplement redimentionner en
conservant le ratio longueur / hauteur ?