11 июн. 2018 г.
Конвертировать PDF в Image в 1С
Для того, чтобы преобразовать
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.Картинка = Картинка;
ТабДок.Вывести(ОбластьРисунок);
КонецПроцедуры
12 мая 2018 г.
Smart watch dz09 русский язык
К сожалению, перед найденной прошивкой из
сети, не был сделан бекап оригинальной прошивки. Поэтому, прежде чем прошивать делай
бекапы.
Выкладываю по этой ссылке прошивку, с возможность
выбора русского интерфейса + работоспособным сенсором.
Плюс держим прошивальщик по этой ссылке.
!Веб камера перевернута в этой прошивке, но
это меня не печалит.
18 апр. 2018 г.
Поле HTML документа удалить колонтитулы
На управляемой форме есть реквизит с типом Поле HTML документа, в которое помещается печатная форма от api сервиса.
При печати даного реквизита
на распечатаной странице отображается не только содержимое хтмл документа, а и номер страницы + дата и урл страницы - это колонтитулы страницы.
готовая обработка находиться тут
Элементы
.
Поле HTML документа
.
document
.
execCommand
(
"print"
)
;
Отключить колонтитулы нужно на уровне браузера, а именно в реестре.
Браузер по умолчанию у меня IE, поэтому:
Браузер по умолчанию у меня IE, поэтому:
wsh
=
Новый
COMОбъект
(
"WScript.Shell"
)
;
wsh
.
RegWrite
(
"HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\PageSetup\footer"
,
""
,
"REG_SZ"
)
;
wsh
.
RegWrite
(
"HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\PageSetup\header"
,
""
,
"REG_SZ"
)
;
Подписаться на:
Сообщения (Atom)