IrfanView: пакетное преобразование командной строки

A) Я хотел бы выполнить пакетное преобразование из *.TIF Format Packbit Conversion в LZW Conversion, перезаписать исходный файл, НО поддерживать исходную структуру папок автоматически. Это легко сделать в графическом интерфейсе Batch Irfanview (я уже это сделал, спросите меня, как, если вы хотите сделать то же самое, что-то подобное)

Б) Я хочу сделать то же самое, что и А), но выбрать только изображения с одинаковым окончанием файла (*xyz.tif), а также сохранить структуру папок! Я думаю, что этот бит может быть подготовлен с помощью python os.walk возможно?!

1 ответ

Я и коллега придумали решение, которое редко можно найти в документации IrfanView или в различных сообществах, я полагаю. Это перебирает структуру папок (с os.walk) и преобразует каждый tif с определенным окончанием (*xyz.tif в этом случае) из Packbit Format в LZW Format и перезаписывает его. Исходная структура папки, таким образом, будет сохранена. Я думаю, что это довольно полезный скрипт для различных задач преобразования (например, из tif в jpeg).

import os

IVIEW32_PATH = 'C:\Program Files (x86)\IrfanView\i_view32.exe'
SOURCE_FILETYPE = 'tif'
TARGET_FILETYPE = 'tif'
PATH = r'D:\OriginalFolderxyz'

for dirpath, subdirs, files in os.walk(PATH):
    print dirpath
    command = '"%s" '%IVIEW32_PATH + dirpath + r"\*_col.%s /tifc=1 /convert="%(SOURCE_FILETYPE) + dirpath + r"\*_xyz.%s"%TARGET_FILETYPE
    os.system(command)
print "ended...*.xyz.tif"
Другие вопросы по тегам