Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Как объединить два файла c расширением tiff

Как объединить два файла c расширением tiff
Я
   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 файл
 
 
   mpvpes
 
1 - 11.03.20 - 18:19
Что не так?
   Garykom
 
2 - 11.03.20 - 18:24
(1) Отладчиком научить пользоваться?
   mikecool
 
3 - 11.03.20 - 18:25
строка, которая получается, в цмд правильно работает?
не вчитывался, но кажется в цикле идет работа только с одним файлом, и результат ожидаем
   mpvpes
 
4 - 11.03.20 - 18:28
В cmd пробовал по одному работает
convert.exe Вх001.tiff результат.tiff
   Garykom
 
5 - 11.03.20 - 18:30
для первого файла
ЗапускОбъединения=(КомандаПрограммы+" "+Стр1.Имя+" "+ИмяФайла);

Для последующих 
ЗапускОбъединения=(КомандаПрограммы+" "+ИмяФайла+" "+Стр1.Имя+" "+ИмяФайла);
   Garykom
 
6 - 11.03.20 - 18:30
(5) Не понял а что за скобки тут левые?
   Garykom
 
7 - 11.03.20 - 18:33
Ну или "Вх"+"*.tiff" передавай шаблон вместо полного имени, нахрен ты файлы перебираешь когда это сам маджик может по шаблону?
   mpvpes
 
8 - 11.03.20 - 18:34
Garykom Спасибо. Сейчас попробую.
   shuhard
 
9 - 11.03.20 - 18:35
(1) почему convert, а не  montage  ?
(7) +1
# montage +frame +shadow +label -tile 5x1 -geometry 50x50+0+0 *.png joined.png      - объединить
   mpvpes
 
10 - 11.03.20 - 18:49
Еще раз Спасибо Garykomу. Все получилось

//////////////

Первая=Истина;
Для каждого Стр1 Из НайденныеФайлы Цикл
        Нстр = ТЧФайлов.Добавить();
        Нстр.ФайлTIFF = Стр1.Имя;    
    
Если Первая=Истина Тогда         
ЗапускОбъединения=(КомандаПрограммы+" "+Стр1.Имя+" "+ИмяФайла);
ЗапуститьПриложение(ЗапускОбъединения,ИмяКаталога,Истина,КодВозврата);
 Первая = Ложь;
   Продолжить;
 КонецЕсли; 
ЗапускОбъединения=(КомандаПрограммы+" "+ИмяФайла+" "+Стр.ИмяФайла+" "+ИмяФайла);
ЗапуститьПриложение(ЗапускОбъединения,ИмяКаталога,Истина,КодВозврата);
   
КонецЦикла;
//////////////////

Вот как получилось

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.