Para eso usualmente se usa la libreria PHP GD.
Hay unas cuantas librerias que te facilitan el trabajo:
http://scripts.phperu.net/imagen/ Cita: EDICIÓN: "WATERMARK" LA IMAGEN (MARCAS DE AGUA)
PHPImagen permite agregar fácilmente marcas de agua a nuestras imágenes. Esto no es más que una imagen $watermark sobrepuesta a la imagen original. La url de la imagen debe ser indicada como primer parámetro y debe estar en formato *.jpg, *.gif o *.png. Cualquier otro tipo de archivo que indiquemos provocará error. Lo más usado son las imágenes PNG, por lo niveles de transparencia que presentan.