Форум: "Базы";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизГде можна сохранить графику в програме? Найти похожие ветки
← →
Inkotex (2003-10-21 12:47) [0]Первый вопрос
Как или где можна сохранить в програме рисунок, рисунки, а потом по необхадимости, в зависимости от условий выводить на TImage нужную картинку?
И второй вопрос
Естли универсальная вожможность записывать в базу (BLOB поля) графику разних форматов bmp, jpeg ... имеется в виду в одну базу, а потом оттуда считывать.
Как работать с jpeg или bmp по отдельности работать я понял.
Спасибо
← →
Reindeer Moss Eater (2003-10-21 12:51) [1]1. На любом устройстве можно
2. Конечно есть
← →
Inkotex (2003-10-21 12:58) [2]А можна пример, или кусок кода?
На любом устройстве? несовсем понял
← →
AntiFriz (2003-10-21 13:04) [3]Возникла такая же проблема.
Как можно сохранить в базе картинку общего типа TGraphic? Считать-то оттуда, насколько я понял, без проблем с TDBImage, а как сохранить? в принципе понятно, что надо использовать sql, но как конкретно, что-то не въезжаю
← →
Inkotex (2003-10-21 13:16) [4]пиши всё в jpeg мало места занимает, считать можно так
Только uses подключи модуль jpeg
NewGraphic := TJPEGImage.Create;
try
NewGraphic.Assign(adoImage.FieldByName("Picture"));
imgImage.Picture.Graphic := NewGraphic;
finally
NewGraphic.Free;
end;
пишеш
TBlobField().LoadFromFile();
если работаеш с bmp можеш через Assign
procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
Image1.Picture.Bitmap.Assign(TBlobField(IBQuery1.FieldByName("foto")));
end;
или вот еще пример
Чтение из блоб-поля в OleContainer
var S: TStream;
begin
if not pFIBDataset1BLOBFIELD.IsNull then
begin
S:=pFIBDataset1.CreateBlobStream(pFIBDataset1BLOBFIELD, bmRead);
try
OleContainer1.LoadFromStream(S)
finally
S.Free
end;
end;
end;
Запись в блоб-полe из OleContainer (вызываeтся в BeforePost)
var S: TStream;
begin
S:=pFIBDataSet1.CreateBlobStream(pFIBDataSet1BLOBFIELD,
bmReadWrite);
try
OleContainer1.SaveToStream(S)
finally
S.Free
end;
end;
Еще вариант работы с BLOB
=========================
var
FS : TFileStream;
begin
FS := TFileStream.Create("c:\temp\sample.txt", fmOpenRead);
try
Query1.ParamByName("CurVal").LoadFromStream(FS, ftMemo);
Query1.ExecSQL;
Database1.Commit;
finally
FS.Free;
end;
end;
← →
Inkotex (2003-10-21 13:18) [5]Я имею ввиду если какойто компонент в котором можна сохранить несколько картинок а потом оттуда когда надо брать?
← →
Sandman25 (2003-10-21 13:22) [6][5] Inkotex (21.10.03 13:18)
TImageList?
← →
Inkotex (2003-10-21 13:29) [7]Sandman25 Спасибо
А можна как нибуть через ddl?
← →
AntiFriz (2003-10-21 13:31) [8]2 Inkotex без шуток - большое человеческое спасибо
← →
Zacho (2003-10-21 13:32) [9]
> Inkotex (21.10.03 13:29) [7]
Может ты имел в виду dll ? Можно.
← →
Zacho (2003-10-21 13:33) [10]
> AntiFriz © (21.10.03 13:31) [8]
Подобные куски кода появляются на этом форуме примерно раз в неделю (а иногда и чаще) да и в FAQ есть. Неужели поискать было лень ?
← →
Inkotex (2003-10-21 13:56) [11]> Zacho
Да я имел ввиду DLL :)
Проста TImageList мне несовсем подходит, там можна графику сохранять формата bmp и ico, а мне надо jpeg.
Или тогда как я ранше писал универсальный способ записи и считывание с базы
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.037 c