PDA

View Full Version : سوال: ساخت thumbnail و افت شدید کیفیت عکس



مهدی اسماعیلی
جمعه 15 شهریور 1392, 14:12 عصر
سلام، دوستان
خسته نباشید

من با کد زیر ، thumbnail با اندازه ی 150*200 میسازم :


<?php
header('Content-Type: image/jpeg');
if(isset($_GET['url'])){
$image = $_GET['url'];
$image_size = getimagesize($image);
$image_width = $image_size[0];
$image_height = $image_size[1];

//$new_size = ($image_width + $image_height) / ($image_width*($image_height/45));
$new_width = 200;
$new_height = 150;

$new_image = imagecreatetruecolor($new_width, $new_height);

$old_image = imagecreatefromjpeg($image);

imagecopyresized($new_image, $old_image, 0, 0, 0, 0, $new_width, $new_height, $image_width, $image_height);
imagejpeg($new_image);
}
?>

اما وقتی عکس تغییر اندازه پیدا میکنه و کوچیک میشه ، کیفیت به شدت میاد پایین !!!!!

آیا راهی هست که جلوی افت کیفیت را بگیریم ؟؟؟

خیلی ممنونم :قلب:

mtnam1372
جمعه 15 شهریور 1392, 14:32 عصر
یه کلاس با استفاده اسان
http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/

مهدی اسماعیلی
جمعه 15 شهریور 1392, 14:40 عصر
یه کلاس با استفاده اسان
http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/

خیلی ممنونم ♥

راهی بجز استفاده از class نیست ؟

mtnam1372
جمعه 15 شهریور 1392, 15:04 عصر
چرا ولی این کلاس ساده و جامع هست
کلاس رو داهنلود میکنی
بعد با این کد به پروژت وصلش میکنی
include('SimpleImage.php');
بعد با این کد یه شعی میسازی از کلاس

$image = new SimpleImage();
حالا کافیه مشخصات عکس رو بدی
و کوچک شدشو تحویل بگیری

$image->load('picture.jpg');
$image->resize(250,400);
$image->save('picture2.jpg');

Unique
جمعه 15 شهریور 1392, 22:41 عصر
این خط را جایگزین کن ببین کیفیتت بهتر میشه :

imagejpeg($new_image,NULL,100);

اینطوری quality را میگذاریم روی ۱۰۰ ! به صورت پیش فرض روی ۷۵ هست مگه اینکه روی سرور دستکاری کرده باشن اما با ست کردنش روی ۱۰۰ بهترین کیفیت و بیشترین حجم را بهت میده !