Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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.035 c
3-41095
Zn
2003-10-22 16:36
2003.11.13
Ошибка переполнения в IBQuery.


1-41134
lucky4me
2003-11-05 07:18
2003.11.13
Регулярные выражения


3-40787
grifon-nn
2003-10-21 22:27
2003.11.13
Индексы Paradox


1-41219
1351
2003-11-01 17:03
2003.11.13
Как корректно удалить!


1-41498
pavlov
2003-10-28 11:00
2003.11.13
Использование TThread внутри dll





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский