Utilizando apenas as funções nativas GD, é possível inserir uma marca d'agua em suas imagens.
O resultado final ficará melhor se o arquivo da marca d'agua for em PNG, pois ja terá as transparencias.
No exemplo usaremos essas imagens:
========================================================================
Veja o código comentado:
<?php
// tutorial para inserir marca dagua
// carrega as imagens
$foto= imagecreatefromjpeg("foto_009.jpg"); // não esquecer de verificar o nome do arquivo
$marca=imagecreatefrompng("marca.png"); // não esquecer de verificar o nome do arquivo
// pega as dimensoes da marca d'agua
$marca_larg=imagesx($marca);
$marca_alt= imagesy($marca);
// insere a marca na imagem
imagecopyresampled($foto,$marca,0,0,0,0,$marca_larg,$marca_alt,$marca_larg,$marca_alt);
// exibe a imagem
imagejpeg($foto,"",100);
// fim :)
// viu como é simples?
?>
=========================================================================
Teremos este resultado: