PDA

View Full Version : کاهش حجم تصاویر



jamejam123
دوشنبه 21 بهمن 1392, 18:45 عصر
سلام وخسته نباشید به اساتید عزیز
چه طور می شه با php حجم تصاویر رو پایین آورد
با تشکر فراوان

beh3000
دوشنبه 21 بهمن 1392, 18:58 عصر
سلام



$im = imagecreatefromjpeg('tasvir.jpg');
imagejpeg($im,'tasvir2.jpg',70);


عدد 70 کیفیت تصویر رو مشخص میکنه هر جه بالاتر تا 100 کیفیت بالاتر حجم بیشتر

MMSHFE
دوشنبه 21 بهمن 1392, 19:59 عصر
از این تابع استفاده کنید:


function Resize($file, $size) {
if(!file_exists($file)) {
return;
}
$im = ImageCreateFromJPEG($file);
$quality = 100;
do {
ImageJPEG($im, $file, $quality--);
} while(filesize($file) > $size && $quality > 0);
ImageDestroy($im);
}

البته میتونید کاملترش کنید. مثلاً برحسب پسوند فایل، بجای فرمت JPEG از PNG و... استفاده کنید تا همه فرمتها رو پوشش بده.

jamejam123
جمعه 25 بهمن 1392, 23:07 عصر
تشکر فراوان از اساتید عزیز بابت پاسخ ها
من می خوام موقعی که یه فایل رو دارم آپلود میکنم تصاویر رو در دو صورت ذخیره کنه
کم کیفیت و پر کیفیت
می خوام موقعی که تصویر رو کوچک لود میکنم آدرس کم کیفیت و موقعی که تصویر رو بزرگ لود میکنم آدرس پر کیفیت رو بدم
حالا میخواستم ببینم کدوم یک از روش های بالا مناسب هستش.

jamejam123
جمعه 25 بهمن 1392, 23:11 عصر
با چه توابعی می تونم اندازه تصاویر رو کم کنم

MMSHFE
شنبه 26 بهمن 1392, 00:11 صبح
هر دو روش جواب میده. فقط شما باید یکبار از تابع فوق برای کاهش حجم تصویر استفاده کنید و با نام مشخص و دنباله دلخواه (مثلاً sm_ یا هر چیز دیگه) ذخیره کنید و یکبار هم حجمش رو دست نزنید و مجدداً از نام و دنباله دلخواه (مثلاً lg_ یا عبارت دلخواه دیگه) برای ذخیره سازی استفاده کنید. حالا هروقت خواستین تصویر با کیفیت یا تصویر کم حجم رو نشون بدین، اسم فایلها رو میدونید چیه که انتخاب کنید.