
Adding Watermarks to Images in PHP
Watermarking images involves adding a visible mark to protect ownership or enhance branding. PHP provides robust functions to seamlessly incorporate watermarks into uploaded images on a website.
Tutorial on Adding Watermarks
-
Load Images: Use imagecreatefrompng() or imagecreatefromjpeg() functions to load the watermark and the image to be watermarked.
-
Set Watermark Position: Determine the desired location of the watermark using the imagesx() and imagesy() functions to calculate offsets from the image edges.
-
Copy Watermark: Use imagecopy() to seamlessly paste the watermark onto the image. Specify the offset and stamp dimensions to control positioning.
-
Output and Cleanup: Output the watermarked image using imagepng(), imagejpeg(), or similar functions depending on the desired format. Cleanup the memory by destroying the image references with imagedestroy().
Example Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <code class = "php" >
$stamp = imagecreatefrompng( 'watermark.png' );
$im = imagecreatefromjpeg( 'image.jpg' );
$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx( $stamp );
$sy = imagesy( $stamp );
imagecopy( $im , $stamp , imagesx( $im ) - $sx - $marge_right , imagesy( $im ) - $sy - $marge_bottom , 0, 0, $sx , $sy );
header( 'Content-type: image/png' );
imagepng( $im );
imagedestroy( $im );</code>
|
Copy after login
Dynamic Watermark Positioning
If the background color of the image varies, you may want to dynamically adjust the watermark's position for optimal visibility. To achieve this, consider using image processing techniques like calculating brightness or color saturation and finding a suitable placement.
The above is the detailed content of How to Add Watermarks to Images in PHP: A Comprehensive Tutorial. For more information, please follow other related articles on the PHP Chinese website!