array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'es', ), 'this' => array ( 0 => 'image.examples-watermark.php', 1 => 'Añadir marcas de agua a imágenes usando canales alfa', ), 'up' => array ( 0 => 'image.examples.php', 1 => 'Ejemplos', ), 'prev' => array ( 0 => 'image.examples-png.php', 1 => 'Creación de un PNG con PHP', ), 'next' => array ( 0 => 'image.examples.merged-watermark.php', 1 => 'Usar imagecopymerge para crear una marca de agua translúcida', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'es', 'path' => 'reference/image/examples.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
Ejemplo #1 Añadir marcas de agua a imágenes usando canales alfa
<?php
// Cargar la estampa y la foto para aplicarle la marca de agua
$estampa = imagecreatefrompng('estampa.png');
$im = imagecreatefromjpeg('foto.jpeg');
// Establecer los márgenes para la estampa y obtener el alto/ancho de la imagen de la estampa
$margen_dcho = 10;
$margen_inf = 10;
$sx = imagesx($estampa);
$sy = imagesy($estampa);
// Copiar la imagen de la estampa sobre nuestra foto usando los índices de márgen y el
// ancho de la foto para calcular la posición de la estampa.
imagecopy($im, $estampa, imagesx($im) - $sx - $margen_dcho, imagesy($im) - $sy - $margen_inf, 0, 0, imagesx($estampa), imagesy($estampa));
// Imprimir y liberar memoria
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>