Как сжать jpg файл без потери качества

11 октября 2012 2 комментария

Как сжать jpg файл без потери качества в Windows или Linux?

Очень просто, но в тоже время возникает вопрос, как можно сжать то, что уже сжато? Это действительно так, но сжимается не сама картинка а служебная информация которая храниться в JPEG. Для того, чтобы это сделать, нам понадобиться утилитка jpegtran, она идет как под windows так и под linux. Я делал на "окошках", и скачал ее вот отсюда http://sourceforge.net/projects/gnuwin32/files/jpeg/6b-4/jpeg-6b-4.exe/download Скаченый файл является инсталяшкой, клацаем по кнопкам далее и у нас все готово. Теперь для того, чтобы сжать наши фотки достаточно сделать небольшой bat файлик который будет пробегаться по всем фоткам в папке и избавлять их от ненужной информации (не нужной в том случае если это используется для web контента, т.к. никто не будет смотреть когда была создана фотка либо каким фотиком ее фоткали) Bat файлик выглядит примитивно вот так: @echo off for %%g in (*.jpg) do "C:\Program Files\GnuWin32\bin\jpegtran" -optimize -progressive -outfile "%%g" "%%g" пробегаемся по фоткам и заменяем их, вуаля. На практике из 1101 фотки которые весили 175 МБ (183 860 151 байт) сжать получилось до 165 МБ (173 771 118 байт), по моему результат не плохой с учетом того, что качество не пострадало!