Имя: Пароль:
1C
 
как преобразовать строку, начинающуюся с "data:image/png;base64" в картинку?
0 altaykniga
 
20.03.18
16:05
Прошу помощи в решении задачи. Спасибо.

Необходимо вывести картинку из ФорматированногоДокумента в ТабДок.

ФорматированныйДокумент разбираю на элементы:

ЭлементыФорматированногоДокумента = ФорматированныйДокумент.ПолучитьЭлементы();
        
        Для Каждого Элемент ИЗ ЭлементыФорматированногоДокумента Цикл

в Итоге получаю Элемент, где ТипЗнч(Элемент.Картинка) = Тип("Строка")

Строка начинается с символов "data:image/png;base64".

Как мне пребразовать эту строку в картинку, чтобы затем выполнить код КартинкаПечатьОрганизации.Картинка = Элемент.Картинка ?
1 Lexey_
 
20.03.18
16:10
(0) Base64Значение(<Строка>)
2 Lexey_
 
20.03.18
16:11
(0) начало строки отрежь
3 altaykniga
 
20.03.18
16:18
(2) прошу ткнуть носом, что отрезать надо от строки в начале
4 Lexey_
 
20.03.18
16:19
(3) Строка начинается с символов "data:image/png;base64", вот с чего начинается, то и отрезай, возможно, запятую надо будет зацепить
5 altaykniga
 
20.03.18
16:49
(4) да, все получилось, спасибо!

сделал следующий образом:

                    СтрокаКартинки = Сред(Элемент.Картинка,23);
                    ДвоичныеДанныеКартинки = Base64Значение(СтрокаКартинки);
                    ВременныйФайл = ПолучитьИмяВременногоФайла();
                    ДвоичныеДанныеКартинки.Записать(ВременныйФайл);
                    СодержимоеФайла = Новый ДвоичныеДанные(ВременныйФайл);
                    Картинка = Новый Картинка(СодержимоеФайла);
6 altaykniga
 
20.03.18
16:50
(4) мне вот интересно, это начало строки всегда будет = 22символам ?
7 vde69
 
20.03.18
16:55
(6) нет, может быть и другой...
8 Вафель
 
20.03.18
16:57
может быть например jpeg
9 altaykniga
 
20.03.18
17:01
как тогда начало строи отрезать?

Искать по вхождению ";base64," ?
10 vde69
 
20.03.18
17:07
(9) скорее по первой запятой
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.