Ru-Board.club
← Вернуться в раздел «Графика»

» Image Catalyst

Автор: Robby
Дата сообщения: 26.02.2011 20:25
Вариант GUI для консольных утилит сжатия изображений Image_Catalyst.exe (9.2 МБ)
Алгоритмы обработки использованы из Image Catalyst 1.5.0.0 от 28.12.2010, но некоторые не полностью еще реализованы.
Возможности:

добавление исходного изображения или группы изображений;
добавление папки с изображениями;
установка папки для вывода (если не выбрано - исходные файлы перезаписываются!);
сохранение структуры исходных папок при пакетном добавлении;
возможность коррекции списка обрабатываемых файлов;
отображение размеров исходных и результирующих файлов, их разницы в размерах и процентах;
ведение раздельных логов: для всех операций и только для ошибок выполнения;
умное конвертирование gif в png (если png файл меньше);
сжатие css файлов с помощью CSSTidy (возможность настройки всех параметров сжатия);
если изображение конвертировано из gif в png то заменяются в файлах стилей *.css все ссылки исходных gif-файлов на новые в формате png.
возможность сравнительного просмотра файлов до и после сжатия

Просьба протестировать. Что еще нужно добавить/убрать и прочие предложения и пожелания.

Добавлено:
Исправлено:
-устранена ошибка смены расширения файла gif на png если конвертация не была выполнена
-устранено попадание файлов *.css в окно сравнения изображений
Ссылка обновлена
Автор: lorents
Дата сообщения: 26.02.2011 22:25
Robby
Отличная работа, сейчас не могу все протестировать, т.к. занят созданием движка версии 1.6.
На днях обязательно посмотрю полностью все функции и обязательно добавлю в шапку.

Протестируй вот эту картинку через мой и свой проекты и сравни результаты. Будишь удивлен (метод - JPEG-Default + удаляем все метаданные). Кстати Image Catalyst единственный мне известный проект, который справляется с данной задачей.
Автор: Robby
Дата сообщения: 27.02.2011 00:05
lorents
Я этот код не реализовал, потому и разница

Код:     find /c " ┬" "%%~fi" >nul
    if errorlevel 1 (
        jpegtran -copy all -optimize -perfect "%%~fi" "%%~fi"
    ) else (
        jpegtran -copy all -progressive -perfect "%%~fi" "%%~fi"
    )
Автор: Robby
Дата сообщения: 06.03.2011 11:29
Да уж, активность в теме нулевая.
lorents

Для твоей картинки наилучшую оптимизацию дает лишь удаление метаданных. Код
jpegtran -copy all -optimize -perfect
или
jpegtran -copy all -progressive -perfect
лишь увеличивают размер файла. Как я уже и говорил, jpegtran -copy all такая конструкция дает увеличение файла. Не знаю в каком проценте случаев, но в тех изображениях, что пробовал я увеличение было в 100% случаев. В общем нужна статистика по алгоритмам.

Могу в GUI добавть режим теста с циклическим перебором всех алгоритмов и сохранением результатов в csv-файл, для последующего анализа. Опять же нужны желающие, а то все, похоже, ждут когда появиться готовый результат.
Реализовал в GUI подсчет времени затраченного на выполнение оптимизации, дополнил Справку. Ссылка будет позже. Опять же требуются желающие для оказания помощи: тестирование, написания справки, варианты алгоримтмов, в общем кто чем может...
Автор: Robby
Дата сообщения: 06.03.2011 17:37
Все еще тестовый вариант GUI для консольных утилит сжатия изображений Image_Catalyst.exe (9.9 МБ)
Автор: lorents
Дата сообщения: 06.03.2011 18:02
Robby
На данный момент лично мне не хватает функции стоп и пауза.
Я об этом думал, и пришел к выводу, что можно сделать следующим образом:
каждый алгоритм записать в отдельный batch и запускать их (в скрытом режиме) по отдельности с каждой картинкой. И закрывать их можно через функцию написанную tavria2.
Но здесь остается вопрос, как AMS будет знать что batch закончил свою работу и закрылся сам?
Автор: Robby
Дата сообщения: 06.03.2011 20:17
lorents
А зачем нужны стоп и пауза?

Цитата:
Но здесь остается вопрос, как AMS будет знать что batch закончил свою работу и закрылся сам?

Ты хочешь сапускать bat без ожидания окончания WaitForReturn=false? Тогда это будет проблемно отследить. Но может можно запускать батник с уникальным Title и по нему отслеживать сам процесс.
Автор: lorents
Дата сообщения: 06.03.2011 20:49
Robby

Цитата:
А зачем нужны стоп и пауза?

ну как бы они нужны бывают

Цитата:
Ты хочешь сапускать bat без ожидания окончания WaitForReturn=false?

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

Цитата:
Но может можно запускать батник с уникальным Title и по нему отслеживать сам процесс.

если честно, я об этом не думал, надо быдет посмотреть.
Автор: Betauser RC
Дата сообщения: 08.03.2011 20:08

TruePNG 0.3.0.5
Цитата:
• Увеличина скорость оптимизации
• Добавлена возможность удаления метаданных без оптимизации
• Добавлена возможность запрета изменения формата изображения
• Добавлены профили оптимизации
Автор: x33333
Дата сообщения: 10.03.2011 23:14
Robby

Цитата:
Просьба протестировать. Что еще нужно добавить/убрать и прочие предложения и пожелания.

Спасибо, отличная программа.

IMHO не хватает:
сохранения настроек в .ini (чтобы при каждом запуске не расставлять галки в настройках и не выбирать тип конвертации);
возможности выбора временной папки;
возможности указать путь для сохранения .csv по умолчанию (чтобы не искать какая папка была добавлена первой);
а также все вопросы (перезаписать файлы?, сохранить .csv?, открыть .csv?) тоже добавить в настройки.
Автор: Robby
Дата сообщения: 11.03.2011 09:43
x33333
будем реализовывать

Добавлено:
еще бы с алгоритмамами подразобраться, некоторые дейстивя портят определенные картинки, и еще они не все в полном объеме реализованы, например Xtreme.
Автор: Zloy_Gelud
Дата сообщения: 14.03.2011 22:50
Robby
Установи в репорте об ошибках киррилический тип начертания для кнопок.
Автор: Robby
Дата сообщения: 14.03.2011 23:05
Zloy_Gelud
кнопки исправил, спасибо.
Автор: lorents
Дата сообщения: 17.03.2011 21:59
Robby
28.03.2011 я обновлю версию движка, и тогда займусь GUI.

И еще хочу кое-что объяснить на счет PNG. При оптимизации важны два параметра, степень и скорость сжатия.
Лично я уделяю больше времени на скорость сжатия. По этой причине PNG Non-interlaced в режиме Xtreme превосходит Fast в среднем на 1,2% (в редких случаях до 5-7%), при этом скорость в 5 раз медленнее. После режима Xtreme, можно в среднем сжать еще на 0,5% (в редких случаях до 1,5%), по время будет затрачено в десятки раз больше. Например, у вас картинка 256*256, вы будите ее оптимизировать 3-4 часа. Если кому очень надо, кидайте в личку я вручную подберу.
Автор: lorents
Дата сообщения: 28.03.2011 14:52
1.6.0.0 от 28.03.2011:
обновлен PngKT 1.2 от 20.03.2011;
обновлен TruePng 0.3.0.6 от 25.03.2011;
обновлен JpegTran (Libjpeg 8c от 16.01.2011);
добавлен Defluff 0.3.0 от 21.03.2011:
добавлена проверка формата PNG от APNG, т.к. у данных форматов одинаковое расширение *.png (спасибо x128);
добавлена возможность не изменять ColorType и BitDepth в PNG (Tools\config.ini);
добавлена возможность удалять определенные Chunks в PNG (Tools\config.ini);
полностью переписаны алгоритм оптимизации PNG-файлов;
полностью переписан "Image Catalyst.bat"
отредактирована справка (ReadMe.txt);
исправлены некоторые ошибки.
Автор: lorents
Дата сообщения: 10.04.2011 23:06
Всем привет!
Только что был обновлен PngOut, по моей просьбе сделаны некоторые изменения, которые существенно улучшат сжатие. Так что придется, еще немного подождать с GUI.
Автор: SFC
Дата сообщения: 11.04.2011 20:06
Robby

Цитата:
сжатие css файлов с помощью CSSTidy (возможность настройки всех параметров сжатия);

А ты не думал сделать этот функционал отдельно.
Ведь до сих пор не существует отдельно GUI for CSSTidy, без всяких там дотнетов.
Автор: Cuprume
Дата сообщения: 12.04.2011 12:40
Есть рисунок http://dl.dropbox.com/u/3622221/Temp/picture.png
После оптимизации (режим 3) исчезает прозрачность, несмотря на то что

Код: nc = false
Автор: lorents
Дата сообщения: 12.04.2011 13:28
Cuprume
это баг связанный с оптимизацией прозрачности, к сожалению, я только в следующей версии планировал ввести функцию отключения данной системы. Постараюсь выпустить обновление к концу апреля.
Автор: RuS_UA
Дата сообщения: 14.04.2011 11:53
Граждане, тут гуглил и нашёл 2 неплохие программы для оптимизации PNG
1. RIOT
2. PNGGauntlet
В описании говорится, что формат png сжимает без потери качества, правда ли это?
Хочу услышать отзывы знатоков.
Автор: lorents
Дата сообщения: 14.04.2011 12:29
RuS_UA

Цитата:
В описании говорится, что формат png сжимает без потери качества, правда ли это?

Особенности оптимизации PNG (пункт 2). Только если отключить пункты 3-5, то тогда без потери, а так получается без визуальных изменений (вот здесь иногда бывают проблемы, но я передаю разработчикам ПО и они все исправляют, пункт 3 отключить на сегодняшний день нельзя, добавлю в следующей версии, именно по этой причине нет drag and drop, чтобы вынуждено копировали картинки).

RIOT - я его не очень люблю
PNGGauntlet - это просто GUI pngout.
Автор: Cuprume
Дата сообщения: 15.04.2011 13:32
lorents
Заметил один момент - у меня был файл jpg, сохраненный в режиме "Progressive" в фотошоп. я решил его оптимизировать и прогнал через режим Optimize. Результирующий размер вышел больше оригинала. А если размер увеличился, в чем смысл оставлять этот новый файл? Логично было бы оставить оригинальный.
Автор: lorents
Дата сообщения: 15.04.2011 14:24
Cuprume
Optimize и Progressive - это два разных метода отображения изображения при загрузке в браузере. Если пользователю нужно получить максимальное сжатие, то надо использовать режим Maximum, а если нужно сохранить в изображении используемый метод, то надо использовать режим Default.

Кстати, один очень интересный момент, Photoshop и Illustrator используют свою собственную библиотеку для создания JPEG. Я использую библиотеку LibJpeg (ее используют почти все программы, которые умеют сохранять в JPEG, включая Fireworks), т.е. если Вы создаете изображения JPEG через Photoshop или Illustrator и оптимизируете через Image Catalyst, то получаете максимальный эффект оптимизации. К сожалению, я так и не смог заставить Photoshop сохранять в JPEG, без потери качества.
Автор: Cuprume
Дата сообщения: 15.04.2011 16:35
lorents
Теперь понятно. А вот такой момент - после проведения оптимизации окно с батником закрывается автоматически, а можно оставлять его открытым? Там же информация о экономии размера, не успеваю ее прочитать А в конце тогда добавлять ,к примеру, фразу "Оптимизация завершена. Для выхода нажмите Enter."
Автор: lorents
Дата сообщения: 15.04.2011 16:46
Cuprume
Почему и нет, сделаю в следующей версии, наверно в конце апреля.

Цитата:
не успеваю ее прочитать

для этого создается в папке с проектом файл Images.cvs
Автор: Cuprume
Дата сообщения: 23.04.2011 19:43
lorents
Еще такой момент, во время оптимизации почему-то выходные данные идут абракадаброй http://dl.dropbox.com/u/3622221/Temp/2011-04-23_1.png
Автор: lorents
Дата сообщения: 23.04.2011 20:02
Cuprume
Спасибо, исправил.
Автор: lorents
Дата сообщения: 28.04.2011 20:37
1.7.0.0 от 28.04.2011:
удален PngKT (временно);
обновлен PngOut от 10.04.2011;
обновлен Defluff 0.3.2 от 07.04.2011;
добавлен PngWolf от 01.04.2011;
добавлена проверка на атрибут файлов "только чтение";
полностью переписаны алгоритмы оптимизации PNG Non-interlaced;
полностью переписан механизм получения изображений для оптимизации;
добавлена возможность не применять систему "Dirty Transparency" для PNG c альфа-каналом (Tools\config.ini);
добавлен отчет об оптимизации;
изменен интерфейс проекта;
отредактирована справка (ReadMe.txt);
исправлены некоторые ошибки.
Автор: Cuprume
Дата сообщения: 29.04.2011 12:17
lorents
После перехода на 1.7.0.0 во время оптимизации появились такие сообщения:
http://dl.dropbox.com/u/3622221/Temp/2011-04-29_1.png
Из-за чего они появились? (Картинке оптимизировались из стандартной папки "Images")
Автор: lorents
Дата сообщения: 29.04.2011 12:27
Cuprume
Честно говоря не представляю, с чего бы это, тестировал на Windows 7 и XP с последними обновлениями, полет нормальный.
Сделаем так:
1. скинь мне картинки, желательно все, как я понял проблема не со всеми картинками?
2. протестируй через старую версию эти же картинки, я тоже так сделаю.
3. режим оптимизации какой, или без разницы?

Страницы: 123456789101112131415

Предыдущая тема: Эффекты в PowerPoint


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.