PDA

Ver la Versión Completa : Imagen en BD ¿Como saber si es bitmap o JPG? al recuperarla


luigi_cr
29-09-2007, 01:41:12
Buenas,

Tengo una columna de imagen en una base de datos de sql 2000, en la cual almaceno imagenes del tipo .bmp (Bitmap) o .JPG, el problema es a la hora de recuperar la imagen con un TMemoryStream, de la siguiente manera:

Stream := TMemoryStream.Create;
Imagen.Close;
Imagen.SQL.Clear;
Imagen.SQL.Add('SELECT ImagenBitmap FROM XXXX WHERE XX = : p0');
Imagen.Parameters[0].Value := ImagenGrid.Fields[0].Text;
Imagen.ExecSQL;
Imagen.Open;
TBlobField(ImagenGrid.Fields[0]).SaveToStream(Stream);


Ok perfecto ya tengo la imagen el TMemoryStream, pero nesecito saber de que tipo es la imagen si bitmap o jpg, no se si existe una forma de saberlo desde el TMemoryStream pero si la hay seria genial, y si no que me ayuden a recuperar la imagen para visualizarla en un TImage.

Muchas gracias a todos los que colaboren.

Mick
29-09-2007, 13:27:24
if (PChar(Stream.Memory)[0]='B') AND (PChar(Stream.Memory)[1]='M')
then ShowMessage('Es un bmp');


Saludos

luigi_cr
02-10-2007, 19:21:23
Muchas gracias por la ayuda.

Despues decidi otra forma de hacer las cosas, en vez de insertar .jpg y .bmp, lo que hago es convertir los .bmp a .jpg y asi la bd guarda todas las imagenes en .jpg, por lo que al momento de recuperar las imagenes ya no es nesesario saber si es .bmp o .jpg ya que todas seran .jpg. de todas formas muchas gracias.

Carmelo Cash
23-10-2007, 13:54:15
Hola

En el comentario anterior, Luigi_cr escribió:

" lo que hago es convertir los .bmp a .jpg "

Me podrían orientar cómo realizar esta operación?.

Muchas Gracias

luigi_cr
23-10-2007, 21:14:13
Hola

En el comentario anterior, Luigi_cr escribió:

" lo que hago es convertir los .bmp a .jpg "

Me podrían orientar cómo realizar esta operación?.

Muchas Gracias

Hola, existen varios post con ese tema, de echo yo tome el ejemplo de uno, deberias utilizar el buscador primero.

Ok y suerte.

nanozaja
06-11-2007, 23:09:52
luigi.... creo q si hiciste un hilo pidiendo ayuda para resolver tu problema y lo lograste... no ve xq tenes q decirle a otra persona q solicita lo q vos aprendiste y le digas q lo busque... creo q fue de muy mal gusto... con todo respeto... amigo si necesitas ayuda, volve a preguntar q a la brevedad te ayudo... saludos