|
УФ, Декорация-картинка | ☑ | ||
---|---|---|---|---|
0
Перелетный косяк
16.07.14
✎
21:41
|
Воюю с УФ. Пытаюсь сделать функционал для автоматических рихтофки фоток в формат 3*4.
Есть упр. форма, на ней элемент Декорация-Картинка. В него надо передавать картинку из MSScriptControl.ScriptControl вот как пытаюсь: //********************************************************************** Функция ЗагрузитьФото(ФайлИзображения) //Возвращает объект картинки из файлов наиболее популярных графических форматов //bmp, jpg, tif, gif, png Скрипт = " |Function LoadImage(SourseFile,ResultFile) |On Error Resume Next |Dim Img 'As ImageFile |Dim IP 'As ImageProcess |Dim objFSO | |Set Img = CreateObject(""WIA.ImageFile"") |Set IP = CreateObject(""WIA.ImageProcess"") |Set objFSO = CreateObject(""Scripting.FileSystemObject"") | |Img.LoadFile SourseFile | |IP.Filters.Add IP.FilterInfos(""Convert"").FilterID |IP.Filters(1).Properties(""FormatID"").Value = ""{B96B3CAB-0728-11D3-9D7B-0000F81EF32E}"" | |Set Img = IP.Apply(Img) | |If objFSO.FileExists(ResultFile) Then | objFSO.DeleteFile ResultFile |End If |If Err.Number = 0 Then | Img.SaveFile ResultFile | LoadImage = 1 |Else | LoadImage = 0 |End if |End Function |"; ИспСкрипт = Новый ComОбъект("MSScriptControl.ScriptControl"); ИспСкрипт.Language="vbscript"; ИспСкрипт.AddCode(Скрипт); ВремФайл = КаталогВременныхФайлов() + "TempWIA1Cimagefile.bmp"; Рез = ИспСкрипт.Run("LoadImage",ФайлИзображения,ВремФайл); Если Рез Тогда К = Новый Картинка(ВремФайл); Иначе К = Новый Картинка(); КонецЕсли; Возврат К; КонецФункции &НаКлиенте Процедура Загрузить(Команда) Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие); Диалог.Заголовок = "Выберите фото 3*4"; Диалог.ПолноеИмяФайла = ""; Диалог.ПредварительныйПросмотр = Истина; Диалог.Фильтр = "Все картинки (*.bmp;*.dib;*.rle;*.jpg;*.jpeg;*.tif;*.gif;*.png;*.ico;*.wmf;*.emf)|*.bmp;*.dib;*.rle;*.jpg;*.jpeg;*.tif;*.gif;*.png;*.ico;*.wmf;*.emf|" + "Формат bmp (*.bmp;*.dib;*.rle)|*.bmp;*.dib;*.rle|" + "Формат JPEG (*.jpg;*.jpeg)|*.jpg;*.jpeg|" + "Формат TIFF (*.tif)|*.tif|" + "Формат GIF (*.gif)|*.gif|" + "Формат PNG (*.png)|*.png|" + "Формат icon (*.ico)|*.ico|" + "Формат метафайл (*.wmf;*.emf)|*.wmf;*.emf|"; // картинки Если Диалог.Выбрать() Тогда фото3х4=ЗагрузитьФото(Диалог.ПолноеИмяФайла); //получает картинку, все ОК Элементы.Декорация1.Картинка = фото3х4; //тут спотыкается Иначе Отказ = Истина; Возврат; КонецЕсли; Ширина = СвойствоИзображения(Объект.ВремФайл,1); Высота = СвойствоИзображения(Объект.ВремФайл,2); КонецПроцедуры {Форма.УФ.Форма(388)}: Ошибка при установке значения атрибута контекста (Картинка) Элементы.Декорация1.Картинка = фото3х4; по причине: Недопустимое значение Причем, из библиотеки вставляет нормально: Элементы.Декорация1.Картинка = БиблиотекаКартинок.Фото; - ОК Туплю - как установить картинку ИЗ ВНЕШНЕГО ФАЙЛА? возможно что дело в Элементы.Декорация1.Картинка.Вид = ВидКартинки.Пустая; а должен быть Элементы.Декорация1.Картинка.Вид = ВидКартинки.Абсолютная; ЗЫ. Пример от УТ11 смотрел. НавигационнаяСсылкаКартинки - не подходит |
|||
1
GROOVY
16.07.14
✎
22:00
|
||||
2
Перелетный косяк
16.07.14
✎
22:18
|
(1) Павел, спасибо. Ушел курить
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |