Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Gráficos (https://www.clubdelphi.com/foros/forumdisplay.php?f=8)
-   -   Como guardar .JPG como Bitmap en Base de Datos (https://www.clubdelphi.com/foros/showthread.php?t=35477)

Javi2 12-09-2006 10:22:28

Como guardar .JPG como Bitmap en Base de Datos
 
Hola,

He conseguido guardar en base de datos un bitmap en un campo de tipo image utilizando un TBlobField y ahora lo que me gustaría es guardar en este mismo campo imágenes de varios formatos ( en concreto .jpg y .ico ) pero guardarlas todas como bitmaps, ya que todas estas imágenes después las utilizo en un TPicture.Bitmap.

¿Como puedo guardar imágenes de tipo .jpg o .ico como un Bitmap en Base de Datos?

Muchas gracias.

Neftali [Germán.Estévez] 12-09-2006 11:54:36

En la sección de trucos del club tienes varios de ellos para convertir imágenes entre los distintos formatos. Pruébalas y dinos si tienes problemas.

seoane 12-09-2006 12:07:35

Extraña petición, lo normal es querer convertir una imagen a jpg por el problema del espacio, no al revés. Recuerda que las imágenes jpeg también pueden mostrarse en un TImage. De todas formas:

Código Delphi [-]
//Importante añadir esto para que reconozca las imagenes jpg
uses jpeg;

// Convierte a bmp, imagenes jpg, ico y wmf
procedure Convertir(Origen, Destino: string);
var
  Imagen: TPicture;
  Bitmap: TBitmap;
begin
  Imagen:= TPicture.Create;
  try
    Imagen.LoadFromFile(Origen);
    if not (Imagen.Graphic is TBitmap) then
    begin
      Bitmap:= TBitmap.Create;
      try
        Bitmap.Width:= Imagen.Width;
        Bitmap.Height:= Imagen.Height;
        Bitmap.Canvas.Draw(0,0,Imagen.Graphic);
        Bitmap.SaveToFile(Destino);
      finally
        Bitmap.Free;
      end;
    end else Imagen.SaveToFile(Destino);
  finally
    Imagen.Free;
  end;
end;

// Ejemplo de uso
Convertir('d:\1.jpg','d:\2.bmp');

Javi2 12-09-2006 12:18:36

Muchísimas gracias!!!

Es justo lo que necesitaba.

casacham 25-03-2007 17:21:57

Para SEASONE. La verad que tu codigo es practico ylindo, no creo que lo vaya a utilizar porque yo mas me especializo en las JPG, ahora, el problema que yo tengo es que en los Campos TBlobl de tablas ADO, no puedo almacenar con otro formato que no sea BMP. En paradox el problema me lo resolvio Delphius citando el boletin pascal N°11, me lo resolvio parcialmente, porque para PARADOX anda perfecto pero estoy ahora tranajando con ADO por el ehcho de que los datos que estoy manipulando deben ser de extremada seguriad. Por eso con tantos bloqueos solo los puedo ver yo. El punto es que no puedo cargar imagenes de otra estirpe que no se BMP, cuando en PARADOX esta resuelto. Si me pueden dar un a mano con est se lo agradeceria


La franja horaria es GMT +2. Ahora son las 04:42:19.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi