PDA

View Full Version : سوال: مشکل با این کد واترارک



premier
پنج شنبه 13 آبان 1389, 10:58 صبح
سلام ببخشید من با این کد واترمارک میزارم ولی فایلهای خیلی کوچک مثل 50*50 و 100*100 را واترمارک میکنه ولی اندازه واترمارکی است که روی عکسهای بزرگ گذاشته میشه لطفا راهنمایی کنید چگونه این مشکل را برطرف کنم؟


<?php
$src = $_GET['src'];

header('Content-type: image/jpeg');

if (eregi("120x120", $src)) {
$watermark = imagecreatefrompng('empty.png');
} else {
$watermark = imagecreatefrompng('watermark.png');
}
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);
$image = imagecreatetruecolor($watermark_width, $watermark_height);
if(eregi('.gif',$src)) {
$image = imagecreatefromgif($src);
}
elseif(eregi('.jpeg',$src)||eregi('.jpg',$src)) {
$image = imagecreatefromjpeg($src);
}
elseif(eregi('.png',$src)) {
$image = imagecreatefrompng($src);
}
else {
exit("Your image is not a gif, jpeg or png image. Sorry.");
}
$size = getimagesize($src);
$dest_x = $size[0] - $watermark_width - 0;
$dest_y = $size[1] - $watermark_height - 0;
imagecolortransparent($watermark,imagecolorat($wat ermark,0,0));
imagecopyresampled($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, $watermark_width, $watermark_height);

imagejpeg($image, "", 95);
imagedestroy($image);
imagedestroy($watermark);
?>

premier
پنج شنبه 13 آبان 1389, 13:01 عصر
میخام برای فایلهای کمتر از 150 پیکسل واتر مارک نباشه!
کسی نیست راهنمایی کنه؟

binyaft
پنج شنبه 13 آبان 1389, 13:30 عصر
سایز تصویر رو با تابع http://php.net/manual/en/function.getimagesize.php چک کنید

premier
پنج شنبه 13 آبان 1389, 17:01 عصر
سایز تصویر رو با تابع http://php.net/manual/en/function.getimagesize.php چک کنید

آقا من از php سر در نمیارم شما کد بالا را میتونید کاری کنید که از اندازه کوچکتر از 120*120 واترمارک نکنه

لازمم! خواهشا کمک کنید.

binyaft
پنج شنبه 13 آبان 1389, 17:19 عصر
این هم از کد

<?php
$src = $_GET['src'];
header('Content-type: image/jpeg');
list($width,$height)=getimagesize($src);
if(($width>120)&&($height>120)){
if (eregi("120x120", $src)) {
$watermark = imagecreatefrompng('empty.png');
} else {
$watermark = imagecreatefrompng('watermark.png');
}
$watermark_width = imagesx($watermark);
$watermark_height = imagesy($watermark);
$image = imagecreatetruecolor($watermark_width, $watermark_height);
if(eregi('.gif',$src)) {
$image = imagecreatefromgif($src);
}
elseif(eregi('.jpeg',$src)||eregi('.jpg',$src)) {
$image = imagecreatefromjpeg($src);
}
elseif(eregi('.png',$src)) {
$image = imagecreatefrompng($src);
}
else {
exit("Your image is not a gif, jpeg or png image. Sorry.");
}
$size = getimagesize($src);
$dest_x = $size[0] - $watermark_width - 0;
$dest_y = $size[1] - $watermark_height - 0;
imagecolortransparent($watermark,imagecolorat($wat ermark,0,0));
imagecopyresampled($image, $watermark, $dest_x, $dest_y, 0, 0, $watermark_width, $watermark_height, $watermark_width, $watermark_height);

imagejpeg($image, "", 95);
imagedestroy($image);
imagedestroy($watermark);
}
else
{
echo file_get_contents($src);
}
?>

موفق باشی

premier
پنج شنبه 13 آبان 1389, 19:32 عصر
اقا مرسی مشکلم حل از تمام بچه ها متشکرم!