Прога , уменьшающая и сжимающая сразу несколько рисунков?

12
Happy Fart
На сайте с 23.08.2006
Offline
33
2300

Нужна программа , позволяющая уменьшать в размерах и сжимать-оптимизировать сразу несколько рисунков.

Подскажите пожалуйста.

Jefa
На сайте с 01.02.2007
Offline
191
#1

Adobe Photoshop

File>Automate> там выбираете что вам надо.

Я пользуюсь File>Automate> web foto gallery

HungryFoerster
На сайте с 03.08.2007
Offline
72
#2

ACDSee - платная, afaik, но в комплекте с некоторыми цифромыльницами бесплатно идет.

По-любому дешевле фотошопа, и записывать действия не нужно, все через меню делается ☝

читаю @frazasutra (https://twitter.com/frazasutra)
Onna
На сайте с 10.04.2007
Offline
77
#3

Jefa, +1

Макрос в фотошопе, заточенный под нужное сжатие/оптимизацию. Потом пакетная обработка файлов этим макросом

Happy Fart
На сайте с 23.08.2006
Offline
33
#4

Надо же... несколько лет пользуюсь Macromedia Fireworks и только сейчас обнаружил , что все это возможно сделать с помощью нее.

Достаточно выбрать в меню File=>Batch Process

вопрос снимается.

Happy Fart
На сайте с 23.08.2006
Offline
33
#5

Спасибо за советы.

Если Не Разберусь с Макромедией - воспользуюсь...

WwWork
На сайте с 07.02.2006
Offline
150
#6

xnview irfanview

Всё бесплтано, и работает отлично!

Более того можно сжимая на лету конвертировать в другой формат, уменьшая размер, добавляя цветность, размывать, регулировать качество, увели...

Вобщем я этими двуя доволен.)

Disell
На сайте с 05.06.2006
Offline
253
#7

xnview - и не парься. http://www.xnview.com/ есть русификаторы - вообще быстрая смотрелка + плагины вроде цепляются по фильтрам итд итп.

Лучшие вакансии ( http://hh.ru ) РУнета. Построй свою карьеру ( http://career.ru )
Dreammaker
На сайте с 20.04.2006
Offline
569
#8

Вот php-скрипт сегодня я как раз соединил несколько функций для этой задачи, нужно было уменьшить для сайта.


<?

$width= 200; // ширина полученного рисунка;

$height = 100; // высота рисунка

$background = 0xFFFFFF; //0xFFFFFF - это белый

$quality = 100; // качество сжатия здесь 100% ;

// (точно не помню, но по-моему с форума Нетката, по крайней мере я выудил её из своей разработки на неткате)
function img_resize($src, $dest, $width, $height, $rgb=0xFFFFFF, $quality=100)
{
if (!file_exists($src)) {
echo "File ne exists";
return false;
}

$size = getimagesize($src);

if ($size === false) {
echo "Razmer ne exists";
return false;
}
// Определяем исходный формат по MIME-информации, предоставленной
// функцией getimagesize, и выбираем соответствующую формату
// imagecreatefrom-функцию.
$format = strtolower(substr($size['mime'], strpos($size['mime'], '/')+1));
$icfunc = "imagecreatefrom" . $format;
if (!function_exists($icfunc)) return false;

$x_ratio = $width / $size[0];
$y_ratio = $height / $size[1];

$ratio = min($x_ratio, $y_ratio);
$use_x_ratio = ($x_ratio == $ratio);

$new_width = $use_x_ratio ? $width : floor($size[0] * $ratio);
$new_height = !$use_x_ratio ? $height : floor($size[1] * $ratio);
$new_left = $use_x_ratio ? 0 : floor(($width - $new_width) / 2);
$new_top = !$use_x_ratio ? 0 : floor(($height - $new_height) / 2);

$isrc = $icfunc($src);
$idest = imagecreatetruecolor($width, $height);

imagefill($idest, 0, 0, $rgb);
imagecopyresampled($idest, $isrc, $new_left, $new_top, 0, 0,
$new_width, $new_height, $size[0], $size[1]);

imagejpeg($idest, $dest, $quality);

imagedestroy($isrc);
imagedestroy($idest);

return true;

}

//Взято из CodeIgniter (хэлпер file_helper) www.codeigniter.com

function get_filenames($source_dir, $include_path = FALSE)
{
static $_filedata = array();

if ($fp = @opendir($source_dir))
{
while (FALSE !== ($file = readdir($fp)))
{
if (@is_dir($source_dir.$file) && substr($file, 0, 1) != '.')
{
get_filenames($source_dir.$file."/", $include_path);
}
elseif (substr($file, 0, 1) != ".")
{

$_filedata[] = ($include_path == TRUE) ? $source_dir.$file : $file;
}
}
return $_filedata;
}
}

$files = get_filenames($_SERVER['DOCUMENT_ROOT'].'/photos1/');


foreach ($files as $file){
img_resize($_SERVER['DOCUMENT_ROOT'].'/photos/photos1/'.$file, $_SERVER['DOCUMENT_ROOT'].'/photos/photos2/'.$file, $width, $height, $background, $quality);

}
?>

Использовать можно на хосте или, например, под денвером.

В корневую папку сайта закачиваем данный скрипт.

Создаём две папки photos1 и photos2

В photos1 закачиваем фотографии, которые нужно сжать.

В скрипте прописываем:

$width - желаемая ширина превьюхи

$height - желаемая высота превьюхи

$background - цвет фона RGB (задавать в том формате что и в примере белый)

$quality - качество, процент сжатия.

После запуска и отработки скрипта результат (все рисунки) будут сохранены в папку photos2 . Результат будет в формате jpeg.

Относительно $background - рисунки не растягиваются без формы, а сжимаются пропорционально, а потом ложаться на фон с параметрами заданными в скрипте. В общем, хорошо получается. :)

update: Исправил ошибку - путь был не исправил...

hypno
На сайте с 17.07.2006
Offline
110
#9

irfanview отличная (бесплатная) прога, жаль только с CMYK не работает.

Jefa
На сайте с 01.02.2007
Offline
191
#10

Dreammaker, а водяной знак прикрутить можем? Понимаю, что на блюдечке с золотой каемочкой, но все же ;)

Чтобы в папку photos2 сохранялись фото с уже наложеным png в нужном месте. 🍻

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий