Вход | Регистрация
 
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.Имя+" "+ИмяФайла);
ЗапуститьПриложение(ЗапускОбъединения,ИмяКаталога,Истина,КодВозврата);
 Первая = Ложь;
   Продолжить;
 КонецЕсли; 
ЗапускОбъединения=(КомандаПрограммы+" "+ИмяФайла+" "+Стр.ИмяФайла+" "+ИмяФайла);
ЗапуститьПриложение(ЗапускОбъединения,ИмяКаталога,Истина,КодВозврата);
   
КонецЦикла;
//////////////////

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

Список тем форума
Рекламное место пустует  Рекламное место пустует
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.