Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

измученный вопрос про "jpg" [D7, dBase, FoxPro]


mike(c) ©   (2005-06-09 11:33:00) 

Спасибо что заглянули... Тема такая: делаю простенькую БД содержащую изображения (BLOB). С загрузкой картинок в БД проблем нет, а вот с отображением в TImage есть. С bmp работает нормально, но они слишком много место занимают, поэтому необходимо сделать Jpeg. При попытке отобразить выскакивает ошибка "Bitmap image is not valid".
Вот как я делал:
Image1.Picture.Assign(TJPEGImage(TBLOBField(DataSource1.DataSet.FieldByName('rosp'))));

а еще пробовал так:
Image1.Picture.Assign(TBLOBField(DataSource1.DataSet.FieldByName('rosp')));

Модуль Jpeg прописан.
Уже долго бьюсь над этим местом, найти пока нигде не смог, поэтому пишу. А может загружать картинки в БД как то по особенному надо?...
Подскажите пожалуйста, буду очень признателен!


Desdechado   (2005-06-09 11:37:00) [1]

   oS := qryGraf.CreateBlobStream( qryGraf.FieldByName( 'PICT_BLOB' ), bmRead );
   if( oS.Size > 0 ) then begin
     case( cExt[ 1 ] ) of
       'B':
         Image1.Picture.Bitmap.LoadFromStream( oS );
       'I':
         Image1.Picture.Icon.LoadFromStream( oS );
       'J':
         begin
           oJPG := TJPEGImage.Create;
           oJPG.LoadFromStream( oS );
           oJPG.DIBNeeded;
           Image1.Picture.Bitmap.Assign( oJPG );
           oJPG.Free;
         end;
       'E', 'W':
         Image1.Picture.Metafile.LoadFromStream( oS );
     end; // case


Наверх

Титульная страница Поиск, карта сайта Написать письмо