Для того, чтобы преобразовать
pdf файл, который возвращает веб сервис, в
файл изображения и последующее вставки в табличный документ нужно для начала
установить программу, так называемую ImageMagick с установленной галкой
а так же Ghostscript.
Далее строка переобразование имеет вид
ЗапуститьПриложение("C:\Program Files\ImageMagick-7.0.7-Q16\convert.exe "+ПутьКФайлуНаДискеПДФ+" " + ПутьКФайлуНаДискеИзображение);
Есть еще момент, перед вставкой в табличный документ 1с нужно сделать паузу
ЗадержкаВСекундах = 2;
Shell = Новый COMОбъект("WScript.Shell");
Shell.Run("ping 127.0.0.1 -n "+ЗадержкаВСекундах+"",0,1);
Макет = ПолучитьОбщийМакет("нп_Этикетка_7х5_10х5");
&НаКлиенте
Процедура ПриОткрытии(Отказ)
//пдф
ПутьКФайлуНаДискеПДФ = ЗагрузитьПоУРЛ_ТТН(АдресСтраницы);
Если ЗначениеЗаполнено(ПутьКФайлуНаДискеПДФ) Тогда
//изображение
ПутьКФайлуНаДискеИзображение = ПереобразоватьПДФ_в_Изображение(ПутьКФайлуНаДискеПДФ);
ЗаполнитьТабличныйДокумент(ПутьКФайлуНаДискеИзображение);
//очистка
УдалитьФайлы(ПутьКФайлуНаДискеПДФ);
Если ЗначениеЗаполнено(ПутьКФайлуНаДискеИзображение) Тогда
УдалитьФайлы(ПутьКФайлуНаДискеИзображение);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
&НаСервере
Функция ПереобразоватьПДФ_в_Изображение(ПутьКФайлуНаДискеПДФ)
Попытка
Гсч = Новый ГенераторСлучайныхЧисел();
ПутьКФайлуНаДискеИзображение = КаталогВременныхФайлов() +Строка(Формат(Гсч.СлучайноеЧисло(),"ЧГ=0" ))+".JPG";
ЗапуститьПриложение("C:\Program Files\ImageMagick-7.0.7-Q16\convert.exe "+ПутьКФайлуНаДискеПДФ+" " + ПутьКФайлуНаДискеИзображение);
Возврат ПутьКФайлуНаДискеИзображение;
Исключение
УдалитьФайлы(ПутьКФайлуНаДискеИзображение);
Сообщить(ОписаниеОшибки());
Возврат "";
КонецПопытки;
КонецФункции
&НаСервере
Функция ЗагрузитьПоУРЛ_ТТН(УРЛ_ТТН)
Попытка
Гсч = Новый ГенераторСлучайныхЧисел();
ПутьКФайлуНаДиске = КаталогВременныхФайлов() +Строка(Формат(Гсч.СлучайноеЧисло(),"ЧГ=0" ))+".pdf";
КопироватьФайл(УРЛ_ТТН, ПутьКФайлуНаДиске);
Возврат ПутьКФайлуНаДиске;
Исключение
УдалитьФайлы(ПутьКФайлуНаДиске);
Сообщить(ОписаниеОшибки());
Возврат "";
КонецПопытки;
КонецФункции
&НаСервере
Процедура ЗаполнитьТабличныйДокумент(ПутьКФайлуНаДиске)
ТабДок = ТТН;
ТабДок.Очистить();
ЗадержкаВСекундах = 2;
Shell = Новый COMОбъект("WScript.Shell");
Shell.Run("ping 127.0.0.1 -n "+ЗадержкаВСекундах+"",0,1);
Макет = ПолучитьОбщийМакет("нп_Этикетка_7х5_10х5");
ОбластьРисунок = Макет.ПолучитьОбласть("Рисунок");
Картинка = Новый Картинка(ПутьКФайлуНаДиске);
ОбластьРисунок.Рисунки.D1.Картинка = Картинка;
ТабДок.Вывести(ОбластьРисунок);
КонецПроцедуры