XnView – не только графический просмотрщик

xnview Уже давно пользуюсь графическим просмотрщиком XnView. Работает он очень быстро, понимает практически все форматы (я даже фотошоповские файлы в нём просматриваю), умеет самостоятельно поворачивать фотографии на основании EXIF-информации (конечно, если фотоаппарат записывает, где верх) – очень приятная фича, но кроме неё – ещё немало удобств. При всём при этом ещё и бесплатен.

Но сегодня я использовал эту программу для… очистки места на диске 🙂 Дело в том, что у меня на ноутбуке хранится немало фотографий, и удалять их – не хотелось бы. Так что я нашёл такое решение: пройтись по всем фотографиям (а их тысячи, в десятках папок) и просто сохранить JPEG в качестве 90%.

С помощью XnView это оказалось легко, потому что это не только просмотрщик и браузер, но ещё и конвертер (и даже немного – редактор) графических файлов, причём он умеет обрабатывать файлы в пакетном режиме. Для выбранных файлов можно составить и применить последовательность действий, например: смасштабировать до 1600×1200 с учётом ориентации, сделать гауссово размытие, потом перевести в grayscale, наложить водяной знак в левый нижний угол, и сохранить в JPEG с качеством 90%. Программа предлагает несколько десятков таких действий, и для почти каждого из них можно задать параметры. Если набор действий выполняется неоднократно (то есть понадобится вам в дальнейшем), то его можно сохранить в виде “скрипта”.

Я поступил просто:

  1. В настройках (пункт меню “Tools » Options”) я задал качество JPEG: в разделе “Read/Write” выбрал вкладку “Write”, в ней в списке – формат JPEG, и указал качество 90% и SubSampling factor – “1×1,1×1,1×1 (best quality)”, проверил что опции “Keep EXIF data” и “Keep IPTC data” включены (чтобы не удалилась мета-информация).
  2. Скопировал часть папок (т.к. сделать копию всех – некуда: не хватит свободного места) с фотографиями во временную папку.
  3. Выбрал в меню “Tools » Batch”, нажал кнопку “Add folder…” и выбрал временную папку. При этом в список добавились все картинки (видео и остальные файлы туда не попали).
  4. Выбрал: формат – JPEG, режим перезаписи – “Replace”, включил “Use original path as output”, целевую папку не выбирал, на вкладке “Transformations” ничего не включал (хотя можно было добавить “Resize”).
  5. Запустил процедуру. Хоть операция эта и требует времени и нагружает процессор – работать совершенно не мешает. По времени так: порция из 1’128 фотографий общим объёмом 1,68 Гб обработались за 36 минут. В итоге получилось 1,17 Гб, то есть экономия где-то 30% – при размерах 1600х1200 (при бóльших размерах “выигрыш” выше, например из 897 Мб получилось 339 Мб при размере 3872 на 2592).

Скажу ещё, что я использовал XnView версии 1.93.6 (в более старых – возможностей меньше).

В целом после обработки всех фотографий “из ниоткуда появилось” дополнительных более 5Гб. 🙂

Дополнено: Разницы между оригинальными фотографиями и обработанными — нет, даже если присматриваться (напомню: это при настройке SubSampling factor – “1×1,1×1,1×1 (best quality)”). Качество можно бы снизить и ещё, до 80-85% — картинка не пострадает. Я рекомендую после обработки просто сравнить фотографии самому.

Дополнено: Кстати, XnView существует не только для Windows 3.1/95/98/Me/XP/Vista, но и для Linux, и для MacOS.