Страница 1 из 1

Копирование картинок в REPORT

Добавлено: 28 Август 2021, 7:45
Игорь Столяров
Привет всем !

Простая задача. Есть 2 (два) одинаковых IMAGE.
В одном указана картинка и нужно скопировать её во второй IMAGE.
Первое, что приходит в голову - не работает:

Код: Выделить всё

  ?Image2{Prop:ImageBits} = ?Image1{Prop:ImageBits}
Тогда непонятно. Не сталкивался ли кто-нибудь с такой задачей ?
Заранее спасибо за идеи ... :)

Копирование картинок в REPORT

Добавлено: 28 Август 2021, 11:16
Admin
Ну так к примеру:

Код: Выделить всё

Img                 &CSTRING
	CODE    
	Img &= NEW CSTRING(LEN(Report $ ?Image1{Prop:ImageBits}))
	Img = Report $ ?Image1{Prop:ImageBits}
	Report $ ?Image2{Prop:ImageBits} = Img
	DISPOSE(Img)

Копирование картинок в REPORT

Добавлено: 28 Август 2021, 11:22
Игорь Столяров
Спасибо ... Я вот почему-то всегда очкую применять функции обработки текста к бинарным строкам. :(
В том же FreeImage - если копируем в памяти бинарную строку (картинка), то всегда известен её размер.
А здесь размер определяется по содержимому бинарной строки ... :(

Копирование картинок в REPORT

Добавлено: 28 Август 2021, 17:25
kreator
Игорь Столяров писал(а): 28 Август 2021, 7:45 Первое, что приходит в голову - не работает:
КОД: ВЫДЕЛИТЬ ВСЁ

?Image2{Prop:ImageBits} = ?Image1{Prop:ImageBits}
Может SetTarget не применён? Или надо "Report$?Image1{Prop:ImageBits}"?

Копирование картинок в REPORT

Добавлено: 28 Август 2021, 20:18
Игорь Столяров
kreator писал(а): 28 Август 2021, 17:25 Или надо "Report$?Image1{Prop:ImageBits}"?
Нет. Судя по всему - этот проперти вообще указатель.

Код: Выделить всё

	?Image1{Prop:ImageBits} = '' ! Сброс картинки не работает
	
Loc:STMP  String(20)
       Code
        ...
        Loc:STMP = ''
        ?Image1{Prop:ImageBits} = Loc:STMP  ! А вот так сброс картинки работает
Действительно копировать картинку надо через строку, которую объявлять по размеру Size(?Image1{Prop:ImageBits})
или использовать буфер &IDynStr. Я сейчас нашёл частное решение через FreeImage, но потом вернусь к этой теме ...