Foros del Web » Programando para Internet » PHP »

Marca de agua no sale transparente

Estas en el tema de Marca de agua no sale transparente en el foro de PHP en Foros del Web. Hola! Tengo una imagen en png, que es esta.... y tiene un fondo transparente: Edito: Ya está solucionado ... Y al hacer la marca de ...
  #1 (permalink)  
Antiguo 02/09/2009, 09:24
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Marca de agua no sale transparente

Hola!

Tengo una imagen en png, que es esta.... y tiene un fondo transparente:


Edito: Ya está solucionado


... Y al hacer la marca de agua me sale esto:

Edito: Ya está solucionado


La función utilizada es esta:

Código PHP:
<?php  

header
('content-type: image/jpeg');  

$watermark imagecreatefrompng('./watermark.png');  
$watermark_width imagesx($watermark);  
$watermark_height imagesy($watermark);  
$image imagecreatetruecolor($watermark_width$watermark_height);  
$image imagecreatefromjpeg($_GET['id']);  
$size getimagesize($_GET['id']);  
$dest_x $size[0] - $watermark_width 5;  
$dest_y $size[1] - $watermark_height 5;  
imagecopymerge($image$watermark$dest_x$dest_y00$watermark_width$watermark_height40);  
imagejpeg($image);  
imagedestroy($image);  
imagedestroy($watermark);  

?>
A ver si alguien sabe el fallo....

Un saludo

Última edición por yonolose; 02/09/2009 a las 14:58
  #2 (permalink)  
Antiguo 02/09/2009, 09:38
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 15 años, 9 meses
Puntos: 1532
Respuesta: Marca de agua no sale transparente

el rango del alpha en imagecopymerge es de 0 a 100:, prueba con varios valores, 75, 50, etc.
  #3 (permalink)  
Antiguo 02/09/2009, 10:04
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Marca de agua no sale transparente

También tienes que hacer uso de imagecolortransparent o imagealphablending.

Saludos.
  #4 (permalink)  
Antiguo 02/09/2009, 10:59
Avatar de dannce4life  
Fecha de Ingreso: junio-2008
Ubicación: localhost
Mensajes: 137
Antigüedad: 15 años, 10 meses
Puntos: 6
Respuesta: Marca de agua no sale transparente

Podés combiar las funciones imagecolorallocatealpha con la función imagettftext para escribir el texto directamente con transparencia.
  #5 (permalink)  
Antiguo 02/09/2009, 14:22
(Desactivado)
 
Fecha de Ingreso: marzo-2008
Mensajes: 641
Antigüedad: 16 años, 1 mes
Puntos: 7
Respuesta: Marca de agua no sale transparente

Ya lo he solucionado

El nuevo código es:

Código PHP:
<?php

$image 
$_GET['id'];
$watermark "./watermark.png";

$im imagecreatefrompng($watermark);

$ext substr($image, -3);


if (!
$im2 imagecreatefromjpeg($image)) {
echo 
"Error opening $image!"; exit;
}


imagecopy($im2$im5500imagesx($im), imagesy($im)); //Comentario al final


header("Content-Type: image/jpeg");
imagejpeg($im2);
imagedestroy($im);
imagedestroy($im2);

?>
Los dos 5... son un margen de 5px en la esquina superior

Saludos!

Saludos!

Última edición por yonolose; 02/09/2009 a las 14:58
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:18.