Sunday 15 March 2015

php - How to add a watermark to a GD image resource -



php - How to add a watermark to a GD image resource -

i using php gd image image upload want add together watermark resized image. found code add together watermark couldn't create work. need hints.

function resizeimage($curwidth, $curheight, $maxsize, $destfolder, $srcimage, $quality, $imagetype) { //check image size not 0 if ($curwidth <= 0 || $curheight <= 0) { homecoming false; } //construct proportional size of new image $imagescale = min($maxsize / $curwidth, $maxsize / $curwidth); $newwidth = ceil($imagescale * $curwidth); $newheight = ceil($imagescale * $curheight); $newcanves = imagecreatetruecolor($newwidth, $newheight); $watermark_png_file = 'watermark.png'; //calculate center position of watermark image $watermark_left = ($newwidth / 2) - (300 / 2); //watermark left $watermark_bottom = ($newheight / 2) - (100 / 2); //watermark bottom $watermark = imagecreatefrompng($watermark_png_file); //watermark image //use php imagecopy() merge 2 images. imagecopy($newcanves, $watermark, $watermark_left, $watermark_bottom, 0, 0, 300, 100); //merge image // resize image if (imagecopyresampled($newcanves, $srcimage, 0, 0, 0, 0, $newwidth, $newheight, $curwidth, $curheight)) { switch (strtolower($imagetype)) { case 'image/png': imagepng($newcanves, $destfolder); break; case 'image/gif': imagegif($newcanves, $destfolder); break; case 'image/jpeg': case 'image/pjpeg': imagejpeg($newcanves, $destfolder, $quality); break; default: homecoming false; } //destroy image, frees memory if (is_resource($newcanves)) imagedestroy($newcanves); homecoming true; } }

i have tried code doesn't work:

function generate_watermarked_image($imagetype, $curwidth, $curheight, $paddingfrombottomright = 0) { $watermarkfilelocation = 'logo.png'; $watermarkimage = imagecreatefrompng($watermarkfilelocation); $watermarkwidth = imagesx($watermarkimage); $watermarkheight = imagesy($watermarkimage); $originalimage = imagecreatefromstring($imagetype); $destx = $curwidth - $watermarkwidth - $paddingfrombottomright; $desty = $curheight - $watermarkheight - $paddingfrombottomright; // creating cutting resource $cut = imagecreatetruecolor($watermarkwidth, $watermarkheight); // copying section of background cutting imagecopy($cut, $originalimage, 0, 0, $destx, $desty, $watermarkwidth, $watermarkheight); // placing watermark imagecopy($cut, $watermarkimage, 0, 0, 0, 0, $watermarkwidth, $watermarkheight); // merging both of images imagecopymerge($originalimage, $cut, $destx, $desty, 0, 0, $watermarkwidth, $watermarkheight, 100); }

php image gd watermark

No comments:

Post a Comment