Оптимизация PNG
1.
Максим (29.08.2009 / 10:00)
Как можно сжать пнг картинку средствами php?
2.
Анатолий (29.08.2009 / 13:10)
$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); //Чистим буфер
3.
Анатолий (29.08.2009 / 13:12)
Если надо сохранять уменьшеные картинки на сервере, тогда в функции
imagepng() вторым аргументом напиши желаемый путь новой картинки
4.
Максим (29.08.2009 / 14:27)
зачем мне изменение размера (файла), это я и сам могу)
я же написал, оптимизация..
уже разобрался. в imagepng можно передать третий аргумент - сжатие, от 0 до 9, 0 - без сжатия, 9 - максимально.
5.
Анатолий (29.08.2009 / 14:41)
4, я не знал, что кроме изменения размера-качества картинок, есть еще какие либо оптимизации
6.
Максим (29.08.2009 / 14:49)
ну я же не говорил, что надо изменить разрешение..
ладно, все, проблема решена.
7.
Анатолий (29.08.2009 / 15:04)
URL:
https://visavi.net/topics/338