Как конвертировать графические файлы через командную строку CMD.EXE

Немногие пользователи наших продуктов знают о такой замечательной возможности, как конвертация графических файлов разных форматов (RAW, BMP, GIF, PNG, JPEG, TIFF и др.) через командную строку CMD.EXE. Практически всех устраивает простой и привычный способ преобразования файлов: запускается программа, на ее окно с помощью drag&drop кидаются выбранные файлы или целые папки, а затем нажимается кнопка «Конвертировать» — вот и вся работа!

Автоматизация конвертирования файлов через коммандную строку

Однако когда речь заходит об автоматизации процесса, конвертации по расписанию и использовании графических конвертеров в собственных скриптах и программах, то запуск из командной строки (консоли, шелла) CMD.exe становится незаменимым инструментом в умелых руках. Хотелось бы проиллюстрировать новый, гибкий и мощный синтаксис CLI (command-line interface) в наших программах на реальных примерах.

Стоит отметить, что поддержка вызова программы из командной строки была реализована в нашем софте относительно давно. Правда, это была лишь простейшая функциональность. Но с очередным обновлением все сильно изменилось в лучшую сторону. Был полностью переработан старый CLI-синтаксис. Как результат, практически все возможности и тонкие настройки конвертации файлов стали доступны при использовании программ в режиме запуска из командной строки.

Кстати, в дистрибутиве и установочной папке программы (обычно это «C:\Program Files\Easy2Convert Software\XXX to XXX\») имеется специальная консольная версия программы с суффиксом cmd в имени файла (например, png2jpgcmd.exe). При автоматизации и вызове программы из скриптов рекомендуем использовать именно этот вариант.

Но хватит сухих фактов, давайте рассмотрим основные возможности нового синтаксиса командной строки на живых примерах. Запускаем консоль Windows CMD.EXE (мы будем работать в Windows 7, но всё это справедливо и для Windows XP, Vista и 8).

Как конвертировать BMP в JPG из консоли CMD.EXE?

У нас есть файл picture.bmp, который нужно преобразовать в формат JPEG. Переходим в папку с программой BMP to JPG и выполняем следующую команду:

bmp2jpg.exe -i c:\tmp\picture.bmp -o d:\converted\ -c jpg

Результат: оригинальный файл BMP конвертирован в формат JPEG и сохранен в папке D:\converted\

Как целиком конвертировать диск Kodak PhotoCD в TIFF из CMD.EXE?

Наверняка у многих фотографов и графических дизайнеров где-нибудь в чулане завалялась пара-тройка таких PhotoCD-дисков, которые были очень популярны лет двадцать назад. Понятное желание сохранить всю эту коллекцию фотографий со старых дисков в более современный формат (например, в TIFF) вполне реализуемо, причем для этого хватит всего лишь одного вызова в командной строке:

pcd2tiffpro.exe -i d:\ -o c:\photocd\ -c tiff

Результат: программа полностью просканировала диск Kodak PhotoCD в DVD-приводе D:\ и конвертировала все найденные файлы .PCD в формат TIFF, после чего сохранила файлы TIFF в папку C:\photocd\

Как сохранить все фреймы анимированного GIF в PNG?

Наши GIF-конвертеры легко извлекают все фреймы из файлов анимации GIF в PNG и другие графические форматы, поэтому усложним задачу. Допустим, требуется обработать файлы GIF, которые находятся в разных папках и на разных дисках, причем одновременно и с помощью всего лишь одного вызова в CMD.EXE.

Это выполнимо, но нужна небольшая подготовка. Составим список исходных файлов и папок, а затем сохраним его как простой текстовый файл list.txt:

c:\tmp\sun.gif
c:\tmp\moon.gif
d:\universe.gif
d:\images\anim01.gif
d:\images\anim02.gif
e:\gfx\
e:\mygifs\
d:\galaxy3.gif
d:\galaxy4.gif

Теперь вызываем программу из командной строки:

gif2image.exe -i c:\list.txt -o d:\converted\ -c png

Результат: все файлы GIF из списка конвертированы в формат PNG, а из анимированных GIF извлечены все фреймы и сохранены в папке D:\converted\

Как изменить размер PSD и сохранить файл в BMP из CMD.EXE?

Скажем, нужно не только конвертировать файл из одного графического формата в другой, но и изменить его размер на 600х400 пикселей, а также развернуть картинку по горизонтали. При этом в качестве результата требуется получить файл формата BMP (8 бит) с RLE-компрессией. Осуществить такую конвертацию помогут дополнительные опции:

psd2image.exe -i c:\design.psd -o d:\tmp\ -c bmp --width=600 --height=400 --flip-horizontal --bmp-bpp=8 --bmp-compression=rle

Результат: размер графического файла формата PSD (Adobe Photoshop) изменен на 600х400 пикселей, картинка развернута горизонтально и сохранена в папке D:\tmp\ в формате BMP (8 бит) с RLE-компрессией.

Как пакетно конвертировать все файлы RAW на флешке в JPEG из CMD.EXE?

Данный пример будет интересен прежде всего фотографам. Итак, вытаскиваем флешку из камеры и копируем/синхронизируем цифровые файлы RAW в папку на компьютере. Теперь нужно пакетно конвертировать все файлы RAW (CRW, CR2, DCR, NEF, RAF и т.д.) в графический формат, пригодный для размещения в Интернете, например в JPEG с наилучшим качеством. При этом нам еще нужно изменить размер на 800х600, а также увеличить яркость и контраст снимков:

raw2jpgpro.exe -i d:\raw\ -o c:\jpeg\ -c jpg --width=800 --height=600 --brightness=30 --contrast=20 --jpg-quality=100

Результат: размер всех файлов RAW размер изменен на 800х600 пикселей, увеличена яркость и контраст; файлы конвертированы в JPEG с максимальным качеством и сохранены в папке C:\jpeg\

Надеемся, эти примеры вызова наших конвертеров через командную строку CMD.EXE пригодятся вам в работе. Для просмотра полного списка поддерживаемых опций командной строки и дополнительных примеров использования обращайтесь к документации, встроенной в программу.