aca te mando un ejemplo y adaptalo a tu sistema, lo que hace uno aveces lo hace lo mas general posible para que le sirva a cualquiera pero sos vos el tiene que saber como usar lo que hizo el otro:
include 'water_mark/water_mark.php';
/*
aca le pongo los archivos a mano, vos lo podes personalizar con un formulario
*/
Código PHP:
Ver original$destino='destino_water_mark/nombre_de_nueva_imagen_con_marca_de_agua.jpg';
$image='original_images/shaka.png';
$watermark = "images/Marca_de_agua.png";
echo "Error opening $image!";
}
echo "Error opening $image!";
}
echo "Error opening $image!";
}
} else { echo ' die'; die; } array ( 'filename' => $watermark, 'position' => array(0,0), )
);
$my_water_mark=watermark($image, $batch, $destino , 50); //DEVUELVE EL ARCHIVO CREADO CON LA MARCA DE AGUA
echo '<pre>'; print_r($datosFile); echo '</pre>';
EL ARCHIVO WATER_MARK.PHP
Código PHP:
Ver original<?php
function watermark($sourcefile, $watermarkfiles, $destination, $quality=90) {
/*
$sourcefile = Filename of the picture to be watermarked.
$watermarkfile = files to add. Each is: array ( 'filename' => filename , 'position' => position to show(array), 'resample' => new dimension(array) )
You can omit any except filename
$destination = jpg or png file to output (jpg if source is jpg, png if source is png). Send blank to direct output
Sample:
$batch = array ( array ( 'filename' => "watermark.png",
'position' => array(100,0),
),
array ( 'filename' => "brilho.png",
'position' => array(200,200),
'resample' => array(30,30)
)
);
watermark("picture.jpg", $batch, "", 90); <-- will add both images in bath on top of picture, preserving transparency
*/
$ispng = $ih[2] == 3;
if ($ispng)
else
$sourcefile_width=imageSX($sourcefile_id); $sourcefile_height=imageSY($sourcefile_id); foreach ($watermarkfiles as $x => $watermarkfile) {
$watermarkfile_width=imageSX($watermarkfile_id); $watermarkfile_height=imageSY($watermarkfile_id);
// resample?
if (isset($watermarkfile['resample'])) { imagecopyresampled($im_dest, $watermarkfile_id, 0, 0, 0, 0, $watermarkfile['resample'][0], $watermarkfile['resample'][1], $watermarkfile_width, $watermarkfile_height); $watermarkfile_id = $im_dest;
$watermarkfile_width = $watermarkfile['resample'][0];
$watermarkfile_height = $watermarkfile['resample'][1];
}
// position ? if none given, centered
if (isset($watermarkfile['position'])){ list($dest_x,$dest_y) = $watermarkfile['position']; }else {
$dest_x = ( $sourcefile_width / 2 ) - ( $watermarkfile_width / 2 ); // centered
$dest_y = ( $sourcefile_height / 2 ) - ( $watermarkfile_height / 2 ); // centered
}
imagecopy($sourcefile_id, $watermarkfile_id, $dest_x, $dest_y, 0, 0, $watermarkfile_width, $watermarkfile_height); }
if ($ispng){
}else{
imagejpeg($sourcefile_id,$destination,$quality); }
return $destination;
}
?>
Espero te sirva a vos a cualquiera, pero tenga la aptitud de aprender a usar lo que hizo otro y no espere solciones magicas
Si quieren lo pueden subir a APORTES, ya que es de uso general