Fusionner plusieurs images en php

WRInaute impliqué
Bonjour,

Avec ce code je fusionne plusieurs images, et j'aimerais rendre les arrières plan (couleur blanche et noire) transparente.

Comment je dois faire ?

Code:
<?php
header ("Content-type: image/jpeg"); // L'image que l'on va créer est un jpeg

$corps = imagecreatefromgif("gif0.gif");
$source1 = imagecreatefromgif("gif1.gif");
$source2 =imagecreatefromgif("gif2.gif"); 
$source3 =imagecreatefromgif("gif4.gif"); 
$source4 =imagecreatefromgif("gif5.gif"); 

imagecopymerge($corps, $source1, 4, 0, 0, 0, 80, 80, 100);
imagecopymerge($corps, $source2, 0, 0, 3, 0, 80, 80, 100);
imagecopymerge($corps, $source3, 3, 0, 0, 0, 80, 80, 100);
imagecopymerge($corps, $source4, 0, 0, 6, 0, 80, 80, 100);


imagejpeg($corps);
?>

Resultat :
maker.php
 
WRInaute accro
Par contre autant sur un dédié cela se fait sans souci (suffit d'installer les bons package), autnt sur un mutu ça me semble compromis...
 
WRInaute impliqué
UsagiYojimbo a dit:
Par contre autant sur un dédié cela se fait sans souci (suffit d'installer les bons package), autnt sur un mutu ça me semble compromis...
J'avais pas pensé à ça ...

Je pensais développer un site sur un 240plan ovh ... quelqu'un sait si il y a possibilité d'installer/utiliser imagemagik ?
 
WRInaute accro
Faut leur demander directement, voir tenter un phpinfo pour savoir si c'est installé (soit les commandes de bases, soit la surcouche php magickwand).
 
WRInaute impliqué
Sur mon hébergeur Imagemagick n''est pas installé.

Comment je pourrais rendre la bordure noire tranparente ?
 
WRInaute impliqué
UsagiYojimbo a dit:
Faut leur demander directement, voir tenter un phpinfo pour savoir si c'est installé (soit les commandes de bases, soit la surcouche php magickwand).
Pour info rien dans le phpinfo, mais j'ai testé ... la lib EST installée ;)

Screu @ 240plan @ content ;)
 
WRInaute accro
Y'a de quoi. Les possibilités de ces exe sont bien supérieurs à GD, voire GD2, aussi bien fonctionnellement que qualitativement.

J'ai taffé il y a quelques années sur un générateurs de wallpaper Flash + PHP utilisant Imagemagick, ça rocksait bien :)
 
WRInaute accro
Si je ne m'abuse, le problème c'est que tu génères du jpeg, et qu'en jpeg, il n'y a pas à proprement parler de couleur transparente, mais tu peux avoir un alpha-channel. Tandis qu'en GIF tu peux dire qu'une couleur particulière (le blanc par exemple) est transparente. Vu le type d'image que tu manipules, le GIF serait de toutes façons probablement un meilleur choix (le jpeg n'est prévu que pour des photos, dans les autres cas il introduit facilement des "artefacts" lors de la compression).

Si tu passes en gif, il te suffit d'utiliser imagecolortransparent[/ulr].

Si tu restes en jpeg, il te faudra allouer une couleur avec une composante alpha, et utiliser imagefill par exemple pour remplacer certaines couleurs existantes par cette nouvelle couleur "transparente".

Jacques.
 
Discussions similaires
Haut