@ganbatte

Как в php автоматом сжимать изображение, в локальном сервере. Какие средства существуют?

В сайте будут загружать изображения, что-бы ускорить работу сайта, нужно реализовать автоматическую компрессию изображений.
  • Вопрос задан
  • 70 просмотров
Решения вопроса 1
Eridani
@Eridani
Мимо проходил
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
anton_reut
@anton_reut
Начинающий веб-разработчик
Есть библиотеки которые ресайзят и обрезают картинки, у меня например так:

function imageResize($file_path, $new_width){
	
	//Получаем ширину и высоту исходника
	list($w, $h) = getimagesize($file_path);
	
	//Получаем коэфицент соотношения сторон
	$proportions = $h / $w;
	
	$new_w = $new_width;
	$new_h = $new_w * $proportions; // Получаем высоту уменьшенной картинки пропорционально новой ширине
	
	$thumb = imagecreatetruecolor($new_w, $new_h);
	
	$source = imagecreatefromjpeg($file_path);
	
	imagecopyresized($thumb, $source, 0, 0, 0, 0, $new_w, $new_h, $w, $h);
	
	imagejpeg($thumb, $_FILES['image']['tmp_name']);
	return $_FILES['image']['tmp_name'];
	imagedestroy($thumb);
}


Скрипт берет картинку из временной папки, уменьшает и возвращает туда же, а потом уже мы её загружаем куда надо предварительно переименовав.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы