Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ademilson Moreira

Problemas com Imagens

Recommended Posts

Estou em um projeto que devo armazenar imagens no banco de dados. Uso delphi 7 e firebird.

Ta tudo funcionando porém, a cada imagem criada o banco cresce em torno de 2megas, enquanto a imagem gira em torno de 100k

Alguem conhece um tipo mais específico para criar estes campos.

Abaixo exemplo de como foi criada as tabelas

 

CREATE TABLE "Tbl001" (

"Cod_emp" INTEGER NOT NULL,

"Num_doc" INTEGER NOT NULL,

"Imagem" BLOB sub_type 0 segment size 1);

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá...

Na verdade você deve estar armazenando a imagem como BMP.

Você deve estar jogando ela em um TImagem e incluindo o Picture do tipo BitMap...

 

Terá que analisar isso... Dê um QryIMAGEM.SaveTofile(c:\Temp.bmp); e abra ela... se abrir é realmente o que lhe falei...

 

 

Att.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz o seguinte muda o campo pra blob seg0 size coloca 240

e pra salvar coloca assim:

 

        QAlt.ParamByName('FOTO').LoadFromFile('c:\foto.JPG', ftBlob);

Para diminuir o tamanho você vai ter q converte a foto eu ultilizo essa rotina

 

 procedure ConverterBmpParaJPeg(Arquivo: string);
var
  Bmp: TBitmap;
  JPeg: TJPegImage;
begin
  Bmp := TBitmap.Create;
  try
    Bmp.LoadFromFile(Arquivo);
    JPeg := TJPegImage.Create;
    try
      JPeg.CompressionQuality := 100; { Qualidade: 100% }
      JPeg.Assign(Bmp);
      JPeg.SaveToFile(ChangeFileExt(Arquivo, '.jpg'));
    finally
      JPeg.Free;
    end;
  finally
    Bmp.Free;
  end;
end;

Assim ele converte pra um tamanho razoavel sem perder qualidade

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

T++ Abs

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.