hossein_asp
کاربر تازه وارد
من برای تغییر دادن اندازه این فانکش رو نوشتم.اما مشکل با ارسال هدر ها دارم.
1-اگه تابع resize رو تو قسمتی که تگ های html وجود داره فراخوانی کنم دچار مشکل میشه یا بهتر بگم هدر ارسال نمیشه.
2-اگر خارج از تگ php که فانکشن توش نوشته شده تو یک تگ جدید تابع رو فراخوانی کنم باز هم مشکل ایجاد میشه از طرف هدر ها.
راهی برای رفع این مشکل هست چون اگه نباشه عملا تغییر اندازه تصویر بی معنا میشه چون باید داخل تگ های html عمل کنه.
اینم تابع من:
1-اگه تابع resize رو تو قسمتی که تگ های html وجود داره فراخوانی کنم دچار مشکل میشه یا بهتر بگم هدر ارسال نمیشه.
2-اگر خارج از تگ php که فانکشن توش نوشته شده تو یک تگ جدید تابع رو فراخوانی کنم باز هم مشکل ایجاد میشه از طرف هدر ها.
راهی برای رفع این مشکل هست چون اگه نباشه عملا تغییر اندازه تصویر بی معنا میشه چون باید داخل تگ های html عمل کنه.
اینم تابع من:
PHP:
function resize($filename,$percent)
{
// Content type
$ext = explode(".", $filename);
$ext = $ext[count($ext)-1];
if($ext == "jpg" || $ext == "jpeg")
{
header('Content-type: image/jpeg');
}
elseif($ext == "png")
{
header('Content-type: image/png');
}
elseif($ext == "gif")
{
header('Content-type: image/gif');
}
// Get new sizes
list($width, $height) = getimagesize($filename);
$newwidth = $width * $percent;
$newheight = $height * $percent;
// Load
$thumb = imagecreatetruecolor($newwidth, $newheight);
if($ext == "jpg" || $ext == "jpeg")
{
$source = imagecreatefromjpeg($filename);
}
elseif($ext == "png")
{
$source = imagecreatefrompng($filename);
}
elseif($ext == "gif")
{
$source = imagecreatefromgif($filename);
}
// Resize
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
// Output
if($ext == "jpg" || $ext == "jpeg")
{
imagejpeg($thumb);
}
elseif($ext == "png")
{
imagegif($thumb);
}
elseif($ext == "gif")
{
imagepng($thumb);
}
}
resiz('a.gif',0.5);
?>