2016-03-12 4 views
0

Я использую Irfanview, который можно запустить через командную строку. Моя проблема заключается в следующем:Обрезать изображения с irfanview

Мой командный файл:

i_view 32.exe /filelist=c:\test\*.pcx /crop=(1,2,3,4,5) /convert=c:\temp\*.pcx 

где 1 представляет собой значение по оси х, 2 является у значение оси, 3 ширина, высота 4 и 5 происхождения.

Мне нужно вырезать две сотни изображений плюс, но мой пакетный файл обрабатывает все изображения до (1,2,3,4,5), тогда как мне нужно, чтобы значения менялись в зависимости от того, какое изображение обрабатывается. Другими словами, первое изображение, которое обрезается, будет размером 3 × 4 пикселя с 1 пикселем вправо и 2 пикселя от источника 5, но мне нужен следующий файл в папке, чтобы иметь разные значения для всех пяти переменных урожая команда предпочтительно через таблицу csv или что-то в этом роде. Кто-нибудь знает, возможно ли это?

PS- IrfanView закрыла форум для регистрации новых учетных записей

+0

Не указано преступление, но вы должны использовать знак '(знак перед номером' 1'), чтобы ввести ** Код ** –

+0

Пожалуйста, поделитесь тем, что вы пробовали! – aschipfl

+0

@ Mr.Helpy, это верно на раскладке клавиатуры в США, но не во всем мире ... – aschipfl

ответ

1
@ECHO OFF 
SETLOCAL 
SET "sourcedir=U:\sourcedir" 
SET "destdir=U:\destdir" 
SET "filename1=%sourcedir%\q35953462.txt" 
FOR /f "usebackqtokens=1-6delims=," %%a IN ("%filename1%") DO (
ECHO(i_view32 %%a /crop=(%%b,%%c,%%d,%%e,%%f^) /convert=%destdir%\%%~na.pcx 
) 

GOTO :EOF 

Вам необходимо будет изменить настройки sourcedir и destdir в соответствии с вашими обстоятельствами.

Я использовал файл с именем q35953462.txt, содержащий некоторые фиктивные данные для моего тестирования.

file1.pcx, 1,2,3,4,5
file2.pcx, 5,4,3,2,1
file3.pcx, 2,4,6,8,10

Предлагаемые команды i_view32 - это всего лишь echo ed на экран. Для того, чтобы активировать следующие проверки изменения echo(i_view32 к i_view32

С файлом,

читать каждую строку и tokenise с использованием , в качестве разделителя. Есть 6 маркеров, номинированные в %%a и inplicitly %%b .. %%f

Я не знаю irfanview синтаксис для одного файла, так что я оставлю полировку вам.

Обратите внимание, что ) необходимо экранировать ^), так как он находится в кодовом блоке.

+0

. Все это помогло, но я все еще вопросы. Я попробовал вашу партию, и это говорит мне, что 1-6delims был неожиданным. Также вы поместите свой q35953462.txt в sourcedir с кадрами, которые вы хотите обрезать? Может быть, это более простой способ сделать это? –

+0

Казалось бы, вы перепечатали код и сделали опечатку. Я вырезал и вставлял свой код из своей тестовой установки. Безопаснее вырезать-вставить.Пакет чувствителен к интервалу - вы не можете разделить параметры на отдельные строки, и кавычки должны быть как есть, а не «умные кавычки», используемые в приложениях WP. Вы можете поместить файл туда, где вы хотите, поэтому его имя помещается в переменную - чтобы было легче изменить, а не преследовать всю процедуру, если вы хотите что-то изменить (эта процедура проста - может быть болью с более крупные) Просто замените '... q35 ...' на нужное имя файла. – Magoo

+0

Спасибо, я определенно сделал опечатку или что-то в этом роде. Я много читал и читал об этом, но, несмотря на все мои усилия, я не могу использовать любую функцию для/f-токена. Иногда я получаю сообщение «было неожиданным», тогда, когда я добавляю кавычки, я получаю синтаксическую ошибку. Может быть, потому, что я использую старый Windows XP ноутбук, который я не могу подключиться к Wi-Fi, чтобы вырезать и вставлять только что пока что я где-то читал, что userqback является пятнистым для Windows XP ?? Может быть, мой txt-файл не отформатирован правильно? –

Смежные вопросы