این تابع، نشانی یک تصویر رو در اینترنت میگیره و اون رو با پهنا و ارتفاع موردنظر شما در مسیری که مشخص کردین ذخیره میکنه و کیفیت رو طوری تنظیم میکنه که از سایزی که مشخص کردین بیشتر نشه. درمورد تصاویر Portrait، ارتفاعی که مشخص کردین رو ملاک قرار میده و پهنا رو بطور خودکار محاسبه میکنه و درمورد تصاویر Landscape هم پهنا ملاک قرار داده میشه و ارتفاع رو براساس اون محاسبه میکنه:
function resize($url, $width, $height, $size, $savePath) {
$data = file_get_contents($url);
$src = ImageCreateFromString($data);
$sw = ImageSX($src);
$sh = ImageSY($src);
$ratio = $sw / $sh;
if ($sw > $sh) {
$height = $width / $ratio;
} else {
$width = $height * $ratio;
}
$dst = ImageCreateTrueColor($width, $height);
ImageCopyResampled($dst, $src, 0, 0, 0, 0, $width, $height, $sw, $sh);
$quality = 100;
do {
ImageJPEG($dst, $savePath, $quality--);
} while ($quality > 0 && filesize($savePath) > $size);
ImageDestroy($dst);
ImageDestroy($src);
}
مثالی از نحوهی استفاده:
resize('http://mysite.com/logo.png', 256, 256, 1048576, 'pics/mysite.jpg');
برنامه نویس...
ما را در سایت برنامه نویس دنبال می کنید
برچسب : نویسنده : خنجی prog بازدید : 211 تاريخ : شنبه 19 فروردين 1396 ساعت: 6:56