Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/10/2012, 09:48
Avatar de OkusPokus
OkusPokus
 
Fecha de Ingreso: diciembre-2007
Mensajes: 21
Antigüedad: 16 años, 4 meses
Puntos: 0
Combinar imágenes transparentes

Hola a todos,
Estoy intentando crear postales con PHP pero no soy muy hábil con la librería GD. Mi intención es incrustar una foto en un fondo con transparencia. Os lo explico con imágenes:



He logrado esto:



Como veis, no he podido lograrlo. Este es el codigo que estoy utilizando:

Código:
//tomamos la imagen "base"
$imagen1 = imagecreatefrompng($foto1);
		 
if ($extension == "image/jpeg")
	$imagen2 = imagecreatefromjpeg($foto2);

if ($extension == "image/png")
	$imagen2 = imagecreatefrompng($foto2);

if ($extension == "image/gif")
	$imagen2 = imagecreatefromgif($foto2);

$fondoAncho = imagesx($imagen1);
$fondoAlto = imagesy($imagen1);
$textoAncho = imagesx($imagen2);
$textoAlto = imagesy($imagen2); 
		 
$imagen3 = imagecreatetruecolor($fondoAncho, $fondoAlto); 

imagecolortransparent($imagen3, 0x00FF00); 
imagefilledrectangle($imagen3, $fondoAncho, $fondoAlto, $fondoAncho, $fondoAlto, 0x00FF00);

imagecopy($imagen1,$imagen2,0,$fondoAlto - $textoAlto,0,0,$textoAncho,$textoAlto); 

imagecopy($imagen3, $imagen1, 0, 0, 0, 0, $fondoAncho, $fondoAlto); 
		 
imagepng($imagen3, $salida);
La variable $foto1 es el fondo (que en el ejemplo es lo que pone "happy holidays" y que tiene transparencias) y $foto2 es la imagen que sube el usuario (que en el ejemplo es la seta con ojos).
¿Me podíais echar una mano?