在PHP中水印图像大小缩放

时间:2015-11-30 10:02:27

标签: php

这是我的代码..

$abc1 =$obj->image_1; //comming from database
$stamp = imagecreatefrompng("../image/product/stamp.png");
$im = imagecreatefromjpeg("../image/product/$abc1");
$save_watermark_photo_address ="../image/product/$abc1";

$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, imagesx($stamp), imagesy($stamp));

imagejpeg($im, $save_watermark_photo_address, 80); 
imagedestroy($im); 

此代码工作正常,但水印图像的大小很大。我希望将其缩小并将其放在$abc1图片的左下角。

1 个答案:

答案 0 :(得分:0)

请自行适应此代码。

<?php
// Load the stamp and the photo to apply the watermark to
$stamp = imagecreatefrompng('stamp.png');
$im = imagecreatefromjpeg('photo.jpeg');

// Set the margins for the stamp and get the height/width of the stamp image
$marge_right = 10;
$marge_bottom = 10;
$sx = imagesx($stamp);
$sy = imagesy($stamp);

// Copy the stamp image onto our photo using the margin offsets and the photo 
// width to calculate positioning of the stamp. 
imagecopy($im, $stamp, imagesx($im) - $sx - $marge_right, imagesy($im) - $sy - $marge_bottom, 0, 0, imagesx($stamp), imagesy($stamp));

// Output and free memory
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>