kpoxas 0 Опубликовано 23 марта, 2008 Жалоба Share Опубликовано 23 марта, 2008 Есть ли смысл поставить проверку размера картинок перед тем как библиотека их нарезает? То есть допустим в настройках стоит, что картинка на карточке товара должна быть 250 на 250. А если оригинальная картинка 200 на 200, то модуль ее увеличивает. В результате качество картинки падает. Проблема в том, чтобы в таком случае размеры картинки всегда оставались бы оригинальными, то есть 200 на 200 в независимости от того, что стоит в настройках. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 23 марта, 2008 Жалоба Share Опубликовано 23 марта, 2008 А я даже и не знаю где там размер указать если честно. Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 23 марта, 2008 Автор Жалоба Share Опубликовано 23 марта, 2008 Я так думаю в файлах product_info_images.php, product_popup_images.php, product_thumbnail_images.php. Там есть функция vam_get_image_size, которая получает размер картинки. А new image_manipulation ее режет, как я понимаю Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 24 марта, 2008 Жалоба Share Опубликовано 24 марта, 2008 Я просто не знаю пока как правильно эту проверки сделать, если честно. Ссылка на сообщение Поделиться на другие сайты
kpoxas 0 Опубликовано 24 марта, 2008 Автор Жалоба Share Опубликовано 24 марта, 2008 в файле \admin\includes\functions\trumbnails_add_funcs.php Строчки: function vam_get_image_size($src, $width, $height) { if ( (CONFIG_CALCULATE_IMAGE_SIZE == 'true') && (empty($width) || empty($height)) ) { if ($image_size = @getimagesize($src)) { if (!vam_not_null($width) && vam_not_null($height)) { $ratio = $height / $image_size[1]; $width = $image_size[0] * $ratio; } elseif (vam_not_null($width) && !vam_not_null($height)) { $ratio = $width / $image_size[0]; $height = $image_size[1] * $ratio; } elseif (!vam_not_null($width) && !vam_not_null($height)) { $width = $image_size[0]; $height = $image_size[1]; } } } return(array((int)$width, (int)$height)); } Заменить на: function vam_get_image_size($src, $width, $height) { if ( (CONFIG_CALCULATE_IMAGE_SIZE == 'true') ) { if ($image_size = @getimagesize($src)) { if (!vam_not_null($width) && vam_not_null($height)) { $ratio = $height / $image_size[1]; $width = $image_size[0] * $ratio; } elseif (vam_not_null($width) && !vam_not_null($height)) { $ratio = $width / $image_size[0]; $height = $image_size[1] * $ratio; } elseif (!vam_not_null($width) && !vam_not_null($height) or ($width > $image_size[0] and $height > $image_size[1])) { $width = $image_size[0]; $height = $image_size[1]; } } } return(array((int)$width, (int)$height)); } Тогда маленькие картинки не будет увеличивать. Ссылка на сообщение Поделиться на другие сайты
support 447 Опубликовано 24 марта, 2008 Жалоба Share Опубликовано 24 марта, 2008 kpoxas Спасибо большое, добавил твой код в магазин. В следующей версии будет. Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения