Вниз
Скачать: CL | DM;

<BLOB Graphic>   Найти похожие ветки 

 
Сергей77 ©   (2003-08-14 08:56) [0]

Осваиваю програмирование. В таблицу Paradox 7, поле <BLOB Graphic>, при загрузке рисунка размером более чем 800х600 пикселов
Project .. raised exception class EInvalidGraphic with message "Bitmap image is not valid"
Это проблема Paradox ? Если так то есть БД которые позволяют работать с рисунками больших размеров?
Кстати в базу он записывается. Открываю БД с помощью SQL Explorer (поставляется вместе с DELFI), Explore Blobs выдает сообщение "Bitmap image is not valid".
Проблема решается?


 
Zorik ©   (2003-08-14 17:08) [1]

Interbase например
А ты как загружаеш через потоки. Через TMemoryStream можно и jpeg загружать.

uses Jpeg;
var ms: TMemoryStream;
jpg: TJpegImage;

запись

try
ms:=TMemoryStream.Create;
jpg:=TJpegImage.Create;
jpg.LoadFromFile(FileName);
jpg.SaveToStream(ms);
ms.Position:=0;
with Table(Query) do
begin
Edit;
FieldbyName("Graphic").LoadFromStream(ms);
Post;
//здесь типа ApplyUpdates, Commit (для Interbase)
end;
finally
ms.Free;
jpg.Free;
end;

чтение

try
ms:=TMemoryStream.Create;
FieldbyName("Graphic").SaveToStream(ms);
jpg:=TJpegImage.Create;
ms.Position:=0;
jpg.LoadFromStream(ms);
Image1.Picture.Assign(jpg);
finally
ms.Free;
jpg.Free;
end;



 
Сергей77 ©   (2003-08-15 04:52) [2]

Я пользуюсь DBImage. Может удобней в базе сохранять имена файлов, а рисунки в отдельном каталоге хранить? Твой способ тоже попробую. У меня книга по Дельфи6 на тысячу с лишним страниц, я там не встречал ни TMemoryStream ни TJpegImage :(



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
6-10863
Hamelion
2003-06-23 22:19
2003.09.04
Как через IdFTP скопировать файл на Ftp сервер???


6-10861
cvv
2003-06-30 15:41
2003.09.04
почему не передаются файлы?


4-11024
Rumata
2003-07-01 19:35
2003.09.04
Трей, онтоп и все все все


3-10642
Lamer_of_Delphi
2003-08-12 12:06
2003.09.04
Поиск!!!


1-10811
Makhanev A.S.
2003-08-22 00:33
2003.09.04
Объясните, пожалуйста, про события...




   Наверх