Como colocar imagens JPEG em um compo BLOB no Paradox

Delphi

19/02/2004

Gostaria de saber como eu faço para colocar imagens no formato JPEG ou GIF ao invés de BMP em um campo Blob ,utilizando o Paradox.
Tenho usado bmp, porém o prgrama fica muito pesado.
Agradeço desde já a atenção, de quem possa me dá esta dica.
SDS,
Paulo


Paulo Almeida

Paulo Almeida

Curtidas 0

Respostas

Leanribas

Leanribas

19/02/2004

cara achei esse exemplo:


211 - Gravar imagem JPG em tabela Paradox
Procedure Grava_Imagem_JPEG(Tabela:TTable; Campo:TBlobField;
Foto:TImage; Dialog:TOpenPictureDialog);
var BS:TBlobStream;
MinhaImagem:TJPEGImage;
Begin
Dialog.InitialDir := ´c:\temp´;
Dialog.Execute;
if Dialog.FileName <> ´´ Then
Begin
if not (Tabela.State in [dsEdit, dsInsert]) Then
Tabela.Edit;
BS := TBlobStream.Create((Campo as TBlobField), BMWRITE);
MinhaImagem := TJPEGImage.Create;
MinhaImagem.LoadFromFile(Dialog.FileName);
MinhaImagem.SaveToStream(BS);
Foto.Picture.Assign(MinhaImagem);
BS.Free;
MinhaImagem.Free;
Tabela.Post;
DBISaveChanges(Tabela.Handle);
End;
End;

procedure TForm1.Button1Click(Sender: TObject);
begin
Grava_Imagem_JPEG(TbClientes,TbClientesCli_Foto, Image1,
OpenPictureDialog1);
// TbClientes é o nome de alguma Tabela
// TbClientesCli_Foto é um variavel da tabela do tipo Blob
// Image1 é um componente
// OpenPictureDialog1 é o componente para abrir a figura
//coloque a uses a unit JPeg
end;


GOSTEI 0
Fabio.hc

Fabio.hc

19/02/2004

[b:2bf86ffbcf]Gravar imagem JPG em tabela Paradox[/b:2bf86ffbcf]
Procedure Grava_Imagem_JPEG(Tabela:TTable; Campo:TBlobField; 
Foto:TImage; Dialog:TOpenPictureDialog);
var BS:TBlobStream;
   MinhaImagem:TJPEGImage;
Begin
   Dialog.InitialDir := ´c:\temp´;
   Dialog.Execute;
   if Dialog.FileName <> ´´ Then
      Begin
      if not (Tabela.State in [dsEdit, dsInsert]) Then
         Tabela.Edit;
      BS := TBlobStream.Create((Campo as TBlobField), BMWRITE);
      MinhaImagem := TJPEGImage.Create;
      MinhaImagem.LoadFromFile(Dialog.FileName);
      MinhaImagem.SaveToStream(BS);
      Foto.Picture.Assign(MinhaImagem);
      BS.Free;
      MinhaImagem.Free;
      Tabela.Post;
      DBISaveChanges(Tabela.Handle);
      End;
End;

procedure TForm1.Button1Click(Sender: TObject);
begin
   Grava_Imagem_JPEG(TbClientes,TbClientesCli_Foto, Image1, 
   OpenPictureDialog1);
   // TbClientes é o nome de alguma Tabela
   // TbClientesCli_Foto é um variavel da tabela do tipo Blob
   // Image1 é um componente
   // OpenPictureDialog1 é o componente para abrir a figura
   end;


[b:2bf86ffbcf]Ler imagem JPG da tabela Paradox[/b:2bf86ffbcf]
Procedure Le_Imagem_JPEG(Campo:TBlobField; Foto:TImage);
var BS:TBlobStream;
   MinhaImagem:TJPEGImage;
Begin
   if Campo.AsString <> ´´ Then
      Begin
      BS := TBlobStream.Create((Campo as TBlobField), BMREAD);
      MinhaImagem := TJPEGImage.Create;
      MinhaImagem.LoadFromStream(BS);
      Foto.Picture.Assign(MinhaImagem);
      BS.Free;
      MinhaImagem.Free;
      End
   Else Foto.Picture.LoadFromFile(´c:\temp\limpa.jpg´);
End;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
   Le_Imagem_JPEG(TbClientesCli_Foto, Image1);
   // TbClientesCli_Foto é um variavel da tabela do tipo Blob
   // Image1 é um componente
end;



GOSTEI 0
POSTAR