Ver Mensaje Individual
  #8  
Antiguo 07-08-2008
waly2k1 waly2k1 is offline
Miembro
 
Registrado: dic 2006
Ubicación: El país de las maravillas(Argentina)
Posts: 251
Reputación: 18
waly2k1 Va por buen camino
Hola JoysticK
Es extraño el tamaño de la imagen
compacto la BD y me reduce de 26 mb a 8 nose como lo guardas pero
con las rutinas que te pasé funciona a la perfeccion con Access.

Y cuando visualizo un registro me aparece el texto Datos Binarios Largos en los campos que son Objeto OLE. Y no así Imagen de MS Photoeditor 3 o lo que fuera que estes guardando ahí, o sea que no estas guardando una imagen
pura sino con formato propio tipo .PSD de photoshop, ademas por el peso
para ser jpg debería ser muy enorme la foto/imagen.

Asi que deberias comenzar por cargar imagenes jpg o bmp sin formatos
propios de una aplicación, o bien guardaste como jpg algo con otro
formato ya que no es suficiente elegir la extension al guardar.

A continuación te copio unas lineas que hago por si es bmp o jpg una imagen, se que hay maneras mas sencillas de hacerlo, pero en su
momento fue lo que se me ocurrio. No es indistinto para el objeto
image si es bmp o jpg pq genera una excepcion

Código:
if not qryEMP.FieldByName( 'FOTO' ).IsNull then
begin
    sTypeFOTO := Copy( AnsiString( qryEMP.FieldByName( 'FOTO' ).Value ), 1, 2 );
    if sTypeFOTO = 'BM' then // Es BMP ?
    begin
        sFOTO := sMainFolder + 'IMGs\TEMP_' + IntToStr( iEmpleado ) + '.bmp';
    end
    else
    begin
        sFOTO := sMainFolder + 'IMGs\TEMP_' + IntToStr( iEmpleado ) + '.jpg';
    end
end;

imgFoto.Picture := nil;
if FileExists( sFOTO ) then
begin
    DeleteFile( PChar( sFOTO ) );
end;

if not qryEMP.FieldByName( 'FOTO' ).IsNull then
begin
    ( qryEMP.FindField( 'FOTO' ) As TBlobField).SaveToFile( sFOTO );
    imgFoto.Picture.LoadFromFile( sFOTO );
end;
Saludos y espero te sirva de algo. Fijate bien q estas guardando, que sea una imagen jpg o bmp y no formatos extraños
Responder Con Cita