|
Как объединить два файла c расширением tiff |
☑ |
0
mpvpes
11.03.20
✎
18:17
|
Процедура ОбъединениеФайловTIFF()
ИмяКаталога="D:\Temp\2020\";
ИмяФайлаКонец="Результат";
ИмяФайла=СокрЛП(ИмяКаталога+"\"+СокрЛП(ИмяФайлаКонец)+".tiff");
ТЧФайлов.Очистить();
МаскаФайла=СокрЛП("Вх"+"*.tiff");
НайденныеФайлы = НайтиФайлы(ИмяКаталога,МаскаФайла,ложь);
КодВозврата=0;
КомандаПрограммы="C:\Program Files (x86)\ImageMagick\convert.exe";
Для каждого Стр1 Из НайденныеФайлы Цикл
Нстр = ТЧФайлов.Добавить();
Нстр.ФайлTIFF = Стр1.Имя;
ЗапускОбъединения=(КомандаПрограммы+" "+Стр1.Имя+" "+ИмяФайла);
ЗапуститьПриложение(ЗапускОбъединения,ИмяКаталога,Истина,КодВозврата);
КонецЦикла;
Сообщить(" в Один файл собрано файлов: " + Строка(ТЧФайлов.Количество()));
КонецПроцедуры
Если N-количество файлов с расширением TIFF
их всех объеденить в один.
У меня формируется почему-то только 1 файл
|
|
1
mpvpes
11.03.20
✎
18:19
|
Что не так?
|
|
2
Garykom
гуру
11.03.20
✎
18:24
|
(1) Отладчиком научить пользоваться?
|
|
3
mikecool
11.03.20
✎
18:25
|
строка, которая получается, в цмд правильно работает?
не вчитывался, но кажется в цикле идет работа только с одним файлом, и результат ожидаем
|
|
4
mpvpes
11.03.20
✎
18:28
|
В cmd пробовал по одному работает
convert.exe Вх001.tiff результат.tiff
|
|
5
Garykom
гуру
11.03.20
✎
18:30
|
для первого файла
ЗапускОбъединения=(КомандаПрограммы+" "+Стр1.Имя+" "+ИмяФайла);
Для последующих
ЗапускОбъединения=(КомандаПрограммы+" "+ИмяФайла+" "+Стр1.Имя+" "+ИмяФайла);
|
|
6
Garykom
гуру
11.03.20
✎
18:30
|
(5) Не понял а что за скобки тут левые?
|
|
7
Garykom
гуру
11.03.20
✎
18:33
|
Ну или "Вх"+"*.tiff" передавай шаблон вместо полного имени, нахрен ты файлы перебираешь когда это сам маджик может по шаблону?
|
|
8
mpvpes
11.03.20
✎
18:34
|
Garykom Спасибо. Сейчас попробую.
|
|
9
shuhard
11.03.20
✎
18:35
|
(1) почему convert, а не montage ?
(7) +1
# montage +frame +shadow +label -tile 5x1 -geometry 50x50+0+0 *.png joined.png - объединить
|
|
10
mpvpes
11.03.20
✎
18:49
|
Еще раз Спасибо Garykomу. Все получилось
//////////////
Первая=Истина;
Для каждого Стр1 Из НайденныеФайлы Цикл
Нстр = ТЧФайлов.Добавить();
Нстр.ФайлTIFF = Стр1.Имя;
Если Первая=Истина Тогда
ЗапускОбъединения=(КомандаПрограммы+" "+Стр1.Имя+" "+ИмяФайла);
ЗапуститьПриложение(ЗапускОбъединения,ИмяКаталога,Истина,КодВозврата);
Первая = Ложь;
Продолжить;
КонецЕсли;
ЗапускОбъединения=(КомандаПрограммы+" "+ИмяФайла+" "+Стр.ИмяФайла+" "+ИмяФайла);
ЗапуститьПриложение(ЗапускОбъединения,ИмяКаталога,Истина,КодВозврата);
КонецЦикла;
//////////////////
Вот как получилось
|
|