PDA

Ver la Versión Completa : Visualizar BLOB


Loviedo
28-01-2005, 14:14:48
Este procedimiento funciona bien con tablas Paradox para visualizar Jpg con un Timage, pero con Firebird me sale el siguiente error:
'Invalid class Typecast'.
Tengo creado el Campo Blob de Firebird como
'BLOB SUB_TYPE 0 SEGMENT SIZE 2048'
tambien he probado con
'BLOB SUB_TYPE 0 SEGMENT SIZE 4096'
el tamaño del Jpg es de 38KB
Gracias anticipadas.

procedure TForm1.Button3Click(Sender: TObject);
var
BS: TBlobStream;
Graphic: TGraphic;
begin
if FDM.IBtable2foto.isnull then
Image1.picture.graphic:=nil
else
begin
BS:=TBlobStream.Create(FDM.IBtable2foto,bmread);
try
Graphic:= TJPEGImage.Create;
try
Graphic.LoadFromStream(BS);
Image1.picture.graphic:=Graphic;
Finally
Graphic.Free;
end;
Finally
BS.free;
end;
end;
end;

Loviedo
28-01-2005, 18:53:21
Ya me funciona.

procedure TForm1.Button3Click(Sender: TObject);
var
BS: TStream;
Graphic: TGraphic;
begin
if FDM.IBtable2FOTO.isnull then
Image1.picture.graphic:=nil
else
begin
BS := FDM.IBtable2.CreateBlobStream(FDM.IBTable2.FieldByName('FOTO'), bmRead);
try
Graphic := TJPEGImage.Create;
try
Graphic.LoadFromStream(BS);
Image1.Picture := nil;
Image1.picture.graphic := Graphic;
Finally
Graphic.Free;
end;
Finally
BS.free;
end;
end;
end;