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

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

DBImage и Jpeg [D6, MSSQL]


gsvserg ©   (2003-07-18 13:07:00) 

Люди добрые! Подскажите как в dbimage отображать картинку jpeg? С bmp проблем нет, но нужно именно jpeg.


Spawn   (2003-07-18 19:05:00) [1]

Я делал для обычного TImage, но тут будет не трудно перевести:


procedure TForm1.ActionChooseImageExecute(Sender: TObject);
var
Jpeg:TJPEGImage;
begin
if OpenDialogChooseCover.Execute then
begin
if (Pos(".jpg",OpenDialogChooseCover.FileName)<>0) or
(Pos(".jpeg",OpenDialogChooseCover.FileName)<>0) then
begin
try
Jpeg:=TJPEGImage.Create;
Jpeg.LoadFromFile(OpenDialogChooseCover.FileName);
(Sender as TImage).Picture.BitMap.Assign(Jpeg);
finally
FreeAndNil(Jpeg);
end;
end
else
(Sender as TImage).Picture.BitMap.LoadFromFile(OpenDialogChooseCover.FileName);
//Это тебе необязательно
(Components[(Sender as TImage).Tag] as TLabel).Visible:=False;
//////////////////////////////////////////////////////////////
with DM.IBDataSet1 do
begin
Edit;
FieldByName("Picture").Assign((Sender as TImage).Picture.Bitmap);
end;

end;
end;


Набережных С.   (2003-07-18 17:18:00) [2]

Поищи в кладовке TDBMultiFmtImage. Через него и сохранять.


gsvserg   (2003-07-18 13:52:00) [3]

???


gsvserg   (2003-07-18 13:37:00) [4]

Пробовал не получается, просто ничего не отображается.


ЮЮ   (2003-07-18 13:31:00) [5]

Странно, потому как в БД у тебя хранится ВitMap:
as TBlobField).Assign(image1.Picture. Bitmap)

А если попробовать сохранить image1.Picture ?


gsvserg   (2003-07-18 13:23:00) [6]

для bmp работает, а jpeg не отображается


gsvserg   (2003-07-18 13:18:00) [7]

Так и сделал, вот текст процедуры добавления картинки

procedure TF_orgsvidoctvoderj.BitBtn1Click(Sender: TObject);
var
image1:timage;
begin
if opdial1.Execute then
begin
image1:=timage.Create(self);
image1.Picture.LoadFromFile(opdial1.FileName);
datamodule1.Q_org.Edit;
(datamodule1.Q_org.FieldByName("svidoctvoderj") as TBlobField).Assign(image1.Picture.Bitmap);
datamodule1.Q_org.Post;

try
image1.Free;
finally
end;

end;


ЮЮ   (2003-07-18 13:13:00) [8]

для начала добавить в uses jpeg, без этого даже OpenPictureDialog тоже не понимает jpeg-формат


Наверх

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