Работа с изображением

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Аватара пользователя
grigoreo
постоялец
Сообщения: 195
Зарегистрирован: 10.03.2009 14:43:43
Откуда: С нашей Раши

Работа с изображением

Сообщение grigoreo »

Уважаемые знатоки, кто знает и у кого есть опыт как в субд в частности Postgres запихать, извлечь картинку из Лазаревского компонента TImage, картинки не сильно большие думаю до мегабайта ....может и меньше
Аватара пользователя
B4rr4cuda
энтузиаст
Сообщения: 693
Зарегистрирован: 28.12.2007 06:48:35

Сообщение B4rr4cuda »

Вот код, берущий из базы сохраненный репорт. Для картинок то же самое, только стрим грузить в TImage.
Даные хранятся в Blob поле. Использую Zeos для работы с базой.

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

var ms:tStream;
begin
  ms:=TMemoryStream.Create;
  (zadm.FieldByName('CERTIFICATE') as TBlobField).SaveToStream(ms);
  ms.Position:=0;
  frReport1.EMFPages.LoadFromStream(ms);
  frReport1.ShowPreparedReport;
  ms.free;

А "запихивать" так:

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

 tmp:=TMemoryStream.Create;
  frReport1.EMFPages.SaveToStream(tmp);
  tmp.Position:=0;
  (ZQtmp.FieldByName('PROTOCOL1')as TBlobField).LoadFromStream(tmp);
  tmp.free;
Ответить