Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 26-07-2006
lacatella lacatella is offline
Registrado
 
Registrado: may 2006
Posts: 1
Poder: 0
lacatella Va por buen camino
BMP en un array

Hola, espero que este mensaje este en la sección correcta, caso sontrario pido disculpas y agradecería que me indiquen a que sección corresponde y como cambiarlo.
Ahora si vamos al problema, necesito guardar en una base de datos (estoy usando firebird como gestor) una imagen bmp (tamaño:256x304, un byte por pixel, resolución:500dpi), la imagen está en memoria (la obtengo de un lector de huellas dactilares) en un array definido de la siguiente forma:

buffer:array[0..256*304] of byte;

la llamada para obtener la misma es la siguiente:

getfinder(0,@buffer[0]);


ahora bien, no soy muy ducho con los punteros y nunca trabaje con imágenes por lo que estoy bien complicado.
Me ayudaría si me pueden dar una idea de como almacenar la imagen en la base de datos o en su defecto como guardarla en un archivo bmp en disco(despues desde el mismo la almaceno en la base).
Desde ya les agradezco cualquier ayuda que puedan darme.
Responder Con Cita
  #2  
Antiguo 27-07-2006
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Empezado por lacatella
Me ayudaría si me pueden dar una idea de como almacenar la imagen en la base de datos
Para guardar ese array en la base de datos, se me ocurre algo como:
Código Delphi [-]
var
  buffer: array[0..256*304] of byte;
  S: string;
begin
  SetLength(S, SizeOf(buffer));
  Move(buffer, S[1], SizeOf(buffer));
  {...
  Field.AsString := S;
  ...}

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 27-07-2006
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 24
seoane Va por buen camino
Por si todavía te interesa convertir un buffer en un bitmap, aquí te dejo un ejemplo:

Código Delphi [-]
var
  Buffer: array[0..255,0..303] of Byte; // Cambie la forma de declarar el array
  Bitmap: TBitmap;
  i,j: Integer;
  P: PByteArray;
begin
  // Las 3 lineas siguientes son solo para llenar el buffer, en tu caso seria getfinder(0,@buffer);
  for i:= 0 to 255 do
    for j:= 0 to 303 do
      Buffer[i,j]:= i xor j;

  Bitmap:= TBitmap.Create;
  try
    Bitmap.PixelFormat:= pf8bit;
    Bitmap.Width:= 256;
    Bitmap.Height:= 304;
    for j:= 0 to Bitmap.Height - 1 do
    begin
      P:= Bitmap.ScanLine[j];
      for i:= 0 to Bitmap.Width - 1 do
        P[i]:= Buffer[i,j];
    end;
    // Aqui guardamos el Bitmap en disco, pero tambien podemos mostrarlo en un TImage o guardarlo en la base de datos.
    Bitmap.SaveToFile('c:\1.bmp');
  finally
    Bitmap.Free;
  end;
end;
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Array Dinamico VRO Varios 6 14-06-2005 12:40:16
Menu con array JulioGO PHP 1 07-02-2005 20:40:56
Como Asignar Variable Tipo Array de Tform a otro Array del Mismo tipo morfeo21 Varios 5 17-08-2004 17:39:51
return un Array rjtostado Oracle 0 15-04-2004 04:44:55
Array esquerda21 Varios 7 26-02-2004 19:27:21


La franja horaria es GMT +2. Ahora son las 15:03:46.


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
Copyright 1996-2007 Club Delphi