|
|
|
| Загружаю пнг картинку размером 8кб.
После обработки кодом, написаным ниже, картинка становится 17кб, хотя и разрешение менше стало.
Где ошибка?
<?php
$max_height=356;
$max_width=416;
$screename='1.png';
$image=imagecreatefrompng('../data/tmp/'.$screename);
$width=imagesx($image);
$height=imagesy($image);
$x_ratio = $max_width/$width;
$y_ratio = $max_height/$height;
if(($width<=$max_width)&&($height<=$max_height)){
$tn_width=$width;
$tn_height=$height;
}elseif(($x_ratio*$height)<$max_height){
$tn_height=ceil($x_ratio*$height);
$tn_width=$max_width;
}else{
$tn_width=ceil($y_ratio*$width);
$tn_height=$max_height;
} $screen=ImageCreateTrueColor($tn_width,$tn_height);
imagecopyresampled($screen, $image, 0, 0, 0, 0, $ tn_width,$tn_height,$width,$height);
imagedestroy($image);
imagecolortransparent($screen, 0);
imagepng($screen,'../data/screen/'.$screename);
imagedestroy($screen);
?>
|
| |
|
|
|
|
|
|
|
для: Fuelen
(20.10.2009 в 22:56)
| | Никакой ошибки нет. Просто алгоритмы библиотеки GD не совершенны. | |
|
|
|
|
|
|
|
для: Саня
(21.10.2009 в 09:21)
| | А библиотека Image Magick эту проблему решит? | |
|
|
|
|
|
|
|
для: Fuelen
(20.10.2009 в 22:56)
| | Вы же resampled делаете, а не resized.
Какие после этого вопросы о размере? | |
|
|
|
|
|
|
|
для: Trianon
(21.10.2009 в 12:51)
| | Всё равно. Если даже resized, то там разница всего в 1кб. | |
|
|
|
|
|
|
|
для: Fuelen
(20.10.2009 в 22:56)
| | может 3 параметром imagepng указать меньше качество? | |
|
|
|
|
|
|
|
для: а-я
(24.11.2009 в 20:25)
| | там нет параметра качества. PNG - формат сжатия без потерь.
А автор, наверное, открывал палитровый вариант PNG, а создает - полноцветный.
Понятно, что будет только толще... | |
|
|
|
|
|
|
|
для: Trianon
(24.11.2009 в 20:31)
| | Такая же фигня и с гиф и с джпег | |
|
|
|
|
|
|
|
для: Fuelen
(26.11.2009 в 14:59)
| | Как я понял это функция по изменению размеров? Тут на форуме очень клачная функция где-то есть. ДАк там картинка сжимается с 1.5 метров до нескольких килобайтов причем качество не ухудшается | |
|
|
|
|
|
|
|
для: tvv123456
(26.11.2009 в 15:19)
| | Качество в любом случае ухудшается. | |
|
|
|
|
|
|
|
для: sim5
(26.11.2009 в 16:05)
| | Может быть но я если честно этого не замечал, да и пользователи тоже, а значит это значения большого не имеет | |
|
|
|
|
|
|
|
для: tvv123456
(26.11.2009 в 20:32)
| | А чего вы не заметили?
Значение имеет наше субъективное восприятие, а оно не объктивно ) Этим и пользуются в видео индустрии, и выбрасывают из изображений очень много деталей.
Поставьте рядом два фото, сравните и заметите. Если фото предлагается для печати, сразу будет заметна "паршивость" сжатого. | |
|
|
|
|
|
|
|
для: tvv123456
(26.11.2009 в 20:32)
| | У меня вап сайт.
Надо беречь траф пользователей | |
|
|
|