Оптимизация PNG

Print RSS
268

М
Author
Землянин
0
Как можно сжать пнг картинку средствами php?
А

Пацак
0
$con_width=100;		//желаемая ширина картинки
$fn="image.png";	//Адрес картинки
$src=imagecreatefrompng($fn); //Загузка картинки в среду РНР
$width=imagesx($src); //Ширина
$height=imagesy($src); //Высота
header("Content-type: image/png"); //Указываем, что надо выводить картинку PNG
if($width>$con_width){	//Если ширина больше указаной
	$koef=$width/$con_width; //Ищем коефициент уменьшения
	$wd=round($width/$koef); //Находим ширину готового изображения
	$hd=round($height/$koef); //Находим высоту готового изображения
	$dest=imagecreatetruecolor($wd,$hd); //Создаем пустое полноцветное изображение с нужными размерами
	imagecopyresized($dest, $src, 0, 0, 0, 0, $wd, $hd,$width, $height); //Копируем картинку с преобразованием размеров в $dest	
}else{ //Если не требуется уменьшение
	$dest=imagecreatefrompng($fn); //Загузка картинки в среду РНР
};
imagepng($dest); //Рисуем картинку
imagedestroy($dest); //Чистим буфер
imagedestroy($src);	//Чистим буфер
А

Пацак
0
Если надо сохранять уменьшеные картинки на сервере, тогда в функции imagepng() вторым аргументом напиши желаемый путь новой картинки
М
Author
Землянин
0
зачем мне изменение размера (файла), это я и сам могу)
я же написал, оптимизация..
уже разобрался. в imagepng можно передать третий аргумент - сжатие, от 0 до 9, 0 - без сжатия, 9 - максимально.
А

Пацак
0
4, я не знал, что кроме изменения размера-качества картинок, есть еще какие либо оптимизации
М
Author
Землянин
0
ну я же не говорил, что надо изменить разрешение..
ладно, все, проблема решена.
А

Пацак
0
mister
Stickers / Tags / Rules / Top topics / Top Posts / Search