Имя: Пароль:
1C
1С v8
ФорматированнаяСтрока и Картинка из двоичных данных
0 infosoft-v
 
01.02.16
12:52
Коллеги, нужен ваш совет.

Платформа 1С:Предприятие 8.3 (8.3.7.1873), управляемая форма, интерфейс Такси.

Хочу в заголовок Декорации выводить форматированную строку и отображать это на форме.

Форматированная строка собирается следующим образом: Картинка + Текст . Пример на скриншоте. https://yadi.sk/i/ZYEWez-vo6P76

Проблема в том, что картинку перед формированием строки я получаю из Интернета. Из HTTPОтвета я получаю двоичные данные. Из двоичных данных получаю объект картинка. То что это картинка, я убедился сохранив в файл. Полученную картинку вставляю в форматированную строку как элемент.

В интерфейсе в режиме Предприятия форматированная строка выводится без картинки. Текст выводится корректно.

Пример кода прикладываю:

&НаКлиенте
Функция ПолучитьКартинку()
   оКартинка = "";
   ДвоичныеДанныеКартинки = "";
      
   // png с пиктограмками соцсетей с РБК
   сURI = "http://v6.top.rbk.ru/rbc_static/version-1.27.6/styles/blocks/footer/images/sprite.png";;
  
   // в переменной ДвоичныеДанныеКартинки действительно данные картинки, я проверял
   ДвоичныеДанныеКартинки = ПолучитьДвоичныеДанныеСРесурса(сURI);
  
   Если ЗначениеЗаполнено(ДвоичныеДанныеКартинки) Тогда
       оКартинка = Новый Картинка(ДвоичныеДанныеКартинки);
   КонецЕсли;
  
   Возврат оКартинка;
КонецФункции

// Процедура для отображения форматированной строки
&НаКлиенте
Процедура ПоказатьИнформер(стДанныеИнформера)
  
   // объектКартинка - переменная типа картинка
   объектКартинка = ПолучитьКартинку();
  
   фсТекст= Новый ФорматированнаяСтрока(сТемпература,,ЦветТекста,ЦветФонаСегодня);
   фсИтоговаяСтрока = Новый ФорматированнаяСтрока(объектКартинка,фсТекст);
  
   // Элемент "Информер" - декорация УФ
   ЭтаФорма.Элементы.Информер.Заголовок = фсИтоговаяСтрока;
   //Проблема:
   // в декорации объектКартинка не выводится, а должен
   // фсТекст выводится и это правильно
  
КонецПроцедуры

Помогите разобраться, почему не выводиться картинка в форматированной строке.
1 DmitrO
 
01.02.16
12:57
В форматированной строке не может отображаться картинка с видом Абсолютная. Может только ИзБиблиотеки.
2 infosoft-v
 
01.02.16
14:11
(1) Спасибо.
Можно попросить совета?
Если находясь на клиенте поместить объект-картинку в хранилище значений, то можно как нибудь избавиться от признака "Абсолютная картинка"?

ps. Я проверил, действительно с картинкой из Библиотеки картинок форматированная строка работает. В синтаксис - помощнике об этом не слова. Как вы такие тонкости определяете?
3 Карупян
 
01.02.16
14:29
сохраните картинки соцсетей в библиотеку
4 infosoft-v
 
01.02.16
14:41
(3) Да этот вариант рабочий но у него есть ограничения.
5 HardBall
 
01.02.16
16:26
1.Записывать картинку на диск
2.Вставлять  URL картинки.
3 Профит, не?
6 infosoft-v
 
01.02.16
16:38
(5) Объект "ФорматированнаяСтрока" может отображать картинку по адресу URL? Можно попросить вас пару строк примера?
7 DmitrO
 
01.02.16
16:46
(6)Не может, это влажные фантазии 1сников.
8 HardBall
 
01.02.16
16:49
(6) Пардон.
Это для форматированного документа.
9 HardBall
 
01.02.16
16:51
(5)
Но решение не меняется.
1.Записывать картинку на диск
2.Вставлять картинку с диска Картинка = Новый Картинка("C:\My Documents\My Pictures\home.gif");
10 HardBall
 
01.02.16
17:00
(9) Запиз-ся.
Ошибка? Это не ошибка, это системная функция.