Foros del Web » Programando para Internet » PHP »

Marcas de agua automaticas con php?

Estas en el tema de Marcas de agua automaticas con php? en el foro de PHP en Foros del Web. Hola me gustaria saber si puedo poner una marca de agua en las imagenes que se suben via php . por ejemplo mi logo o ...
  #1 (permalink)  
Antiguo 27/05/2003, 09:32
Avatar de lochorui  
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 899
Antigüedad: 22 años, 2 meses
Puntos: 2
Marcas de agua automaticas con php?

Hola me gustaria saber si puedo poner una marca de agua en las imagenes que se suben via php . por ejemplo mi logo o simplemente una raya.

Un saludo
  #2 (permalink)  
Antiguo 27/05/2003, 09:35
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 22 años, 3 meses
Puntos: 17
Mira este artículo sobre GD avanzado:

http://www.phpbuilder.com/columns/cash20030526.php3

Ahí hay muchas cosas de ese tipo.
__________________
M a l d i t o F r i k i
  #3 (permalink)  
Antiguo 27/05/2003, 11:39
Avatar de lochorui  
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 899
Antigüedad: 22 años, 2 meses
Puntos: 2
Gracias cain he conseguido mas o menos peor no se que me falla y es q hay cosas que no se que siginifacn.

Codigo:
Código PHP:
function imagettftexttransparent(&$im,$size,$angle,$x,$y,&$col,$fontfile,$text,$pct) { 
    
$im_w imagesx($im); // Get the image width 
    
$im_h imagesy($im); // Get the image height 
    
$new imagecreate($im_w,$im_h); // Create a buffer 
    
imagesetpixel($im,$im_w-1,0,$col); // Set a pixel down, so we can easily get the color 
    
$index imagecolorat($im,$im_w-1,0); // Get the color at that pixel 
    
$rgb imagecolorsforindex($im,$index); // Get the index of that color 
    
$r $rgb["red"]; // Get the red value 
    
$g $rgb["green"]; // Get the green value 
    
$b $rgb["blue"]; // Get the blue value 
    
$color imagecolorallocate($new,$r,$g,$b); // Allocate this color on the buffer 
    
$copy imagecopy($new,$im,0,0,0,0,$im_w,$im_h); // Copy the old image onto the buffer 
    
$text imagettftext($new,$size,$angle,$x,$y,$color,$fontfile,$text); // Draw the text 
    
$merge imagecopymerge($im,$new,0,0,0,0,$im_w,$im_h,$pct); // Copy the buffer back onto the original image 
    
imagedestroy($new); // Destroy the buffer 

}
imagettftexttransparent($newimage,400,50,$red,"arial.ttf","HOLA CARACOLA",$pct); 
pues ese ultimo pct no se qu sera.

me da el siguiente error
Cita:
Fatal error: Cannot pass parameter 6 by reference in /home/lomoon/public_html/Nuevo/Admin/pruebamarcas.php on line 51
la 51 es la ultiam en la que le digo que me realice mi marca d agua

Un saludo
  #4 (permalink)  
Antiguo 27/05/2003, 11:44
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 22 años, 3 meses
Puntos: 17
Cita:
imagettftexttransparent(resource im, int size, int angle, int x, int y, int col, string fontfile, string text, int pct)
imageTTFTextTransparent will draw transparent text on your image.
im is the image you want to edit.
size is the text size in points.
angle is the angle of the text.
x is the left coordinate of the text.
y is the top coordinate of the text.
fontfile is the font file you wish to use.
text is the text you wish to write.
pct is the percent that the text is transparent.
Según la documentación, $pct es el porcentaje de transparencia del texto.
__________________
M a l d i t o F r i k i
  #5 (permalink)  
Antiguo 27/05/2003, 11:44
 
Fecha de Ingreso: diciembre-2002
Mensajes: 341
Antigüedad: 21 años, 4 meses
Puntos: 0
Si no terminas de conseguir lo que quieres con el artículo de phpbuilder, prueba con este que escribí:

http://guebmaster.com/articulo.php/102
__________________
guebs - alojamiento web y dominios
www.guebs.com
blog.guebs.com
  #6 (permalink)  
Antiguo 28/05/2003, 11:59
Avatar de lochorui  
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 899
Antigüedad: 22 años, 2 meses
Puntos: 2
Hola ,he cambiado al final porque me interesaba mas que me hiciera la marca con una imagen peor ahora me da el siguiente error:

Code:
Código PHP:
function marcadeagua($img_original$img_marcadeagua$img_nueva$calidad) { 

    
// obtener datos de la fotografia 
    
$info_original getimagesize($img_original); 
    
$anchura_original $info_original[0]; 
    
$altura_original $info_original[1]; 

    
// obtener datos de la "marca de agua" 
    
$info_marcadeagua getimagesize($img_marcadeagua); 
    
$anchura_marcadeagua $info_marcadeagua[0]; 
    
$altura_marcadeagua $info_marcadeagua[1]; 

    
// calcular la posición donde debe copiarse la "marca de agua" en la fotografia 
    
$horizextra $anchura_original $anchura_marcadeagua
    
$vertextra $altura_original $altura_marcadeagua
    
$horizmargen =  round($horizextra 2); 
    
$vertmargen =  round($vertextra 2); 

    
// crear imagen desde el original 
    
$original ImageCreateFromJPEG($img_original); 
    
ImageAlphaBlending($originaltrue); 

    
// crear nueva imagen desde la marca de agua 
    
$marcadeagua ImageCreateFromPNG($img_marcadeagua); 

    
// copiar la "marca de agua" en la fotografia 
    
ImageCopy($original$marcadegua$horizmargen$vertmargen00$anchura_marcadeagua$altura_marcadeagua); 

   
// guardar la nueva imagen 
   
ImageJPEG($original$img_nueva$calidad); 

   
// cerrar las imágenes 
   
ImageDestroy($original); 
   
ImageDestroy($marcadeagua); 


// aplicamos la funcion a una imagen "original.jpg" 
marcadeagua($newimage,'marca.png',$newimage,100); 
Y el error:
Cita:
Warning: imagecopy(): supplied argument is not a valid Image resource in /home/lomoon/public_html/Nuevo/Admin/pruebamarcas.php on line 62
la linea 62 es la d imagecopy

Un saludo

Ayuda please


Última edición por lochorui; 28/05/2003 a las 11:59
  #7 (permalink)  
Antiguo 28/05/2003, 12:12
 
Fecha de Ingreso: diciembre-2002
Mensajes: 341
Antigüedad: 21 años, 4 meses
Puntos: 0
jeje, he estado 15 minutos pensado cual podía ser la causa.... y jeje, en la línea 62 pone $marcadegua cuando debería poner $marcadeagua...

Error mio, voy a correjir el artículo...
__________________
guebs - alojamiento web y dominios
www.guebs.com
blog.guebs.com
  #8 (permalink)  
Antiguo 28/05/2003, 12:57
Avatar de lochorui  
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 899
Antigüedad: 22 años, 2 meses
Puntos: 2
fijate q en el mio yo ya habia detectado en esa misma errores parecido en :

ImageCopy($original, $marcadeagua, $horizmargen, $vertmargen, 0, 0, $anchura_marcadeagua,

en tu scriopt pone

ImageCopy($original, $marcadeagua, $horizmargin, $vertmargin, 0, 0, $anchura_marcadeagua,

cambialo tmb.

Un saludo
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 16:42.