Is it recommended to add watermarks during image upload or on-the-fly when images are accessed?

Adding watermarks during image upload is recommended as it ensures that all images have the watermark applied consistently. This way, you only need to add the watermark once during the upload process, saving time and resources. On-the-fly watermarking when images are accessed can be resource-intensive and slow down the loading of images on your website.

// Example code to add a watermark during image upload
$source_image = imagecreatefromjpeg('original_image.jpg');
$watermark = imagecreatefrompng('watermark.png');

$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);

$dest_x = imagesx($source_image) - $watermark_width - 10;
$dest_y = imagesy($source_image) - $watermark_height - 10;

imagecopy($source_image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height);

imagejpeg($source_image, 'watermarked_image.jpg');

imagedestroy($source_image);
imagedestroy($watermark);