Carregar Imagem PNG
Colegas estou com um problema tenho uma variavel Imagem do tipo TPNGImage,
e quero passar a imagem do meu banco para essa variável alguém tem alguma ideia todos os métodos q usei deu erro.
e quero passar a imagem do meu banco para essa variável alguém tem alguma ideia todos os métodos q usei deu erro.
Laelson Fagundes
Curtidas 0
Respostas
Francisco Sobrinho
16/05/2014
Olá amigo,
a imagem está salva no banco de dados?
Veja se esta solução do robinhocne te atende:
https://www.devmedia.com.br/forum/ler-imagem-do-banco-firebird-blob/385700
a imagem está salva no banco de dados?
Veja se esta solução do robinhocne te atende:
https://www.devmedia.com.br/forum/ler-imagem-do-banco-firebird-blob/385700
GOSTEI 0
Laelson Fagundes
16/05/2014
como eu disse no tipoco a imagem é PNG e o link m direciona para bmp e jpg
GOSTEI 0
Cauê Nishijima
16/05/2014
Não cheguei a testar no Delphi mas é uma adaptação de um código meu:
Qualquer coisa manda mensagem
procedure carregaPNG(field: TField; img: TPNGImage)
var
BlobStream: TStream;
begin
if field.IsNull then
begin
FreeAndNil(img);
img := TPNGImage.Create;
end
else
begin
BlobStream := field.DataSet.CreateBlobStream(field, bmRead);
try
if BlobStream.Size <> 0 then
img.LoadFromStream(BlobStream)
else
begin
FreeAndNil(img);
img := TPNGImage.Create;
end;
finally
FreeAndNil(BlobStream);
end;
end;
end;
Qualquer coisa manda mensagem
GOSTEI 0
Wijloc
16/05/2014
a solução do Cauê é válida... o Stream é como se você criasse o arquivo em memória
GOSTEI 0
Laelson Fagundes
16/05/2014
Cauê Nishijima vou testar amanha no trabalho e responde aqui se deu certo
vlw
vlw
GOSTEI 0
Laelson Fagundes
16/05/2014
Caue tenho duas Duvidas em relação seu codigo eu tenho que passar a Imagem que esta no Banco para uma Variavel do TPNGImage da forma que esta na procedure eu não vou conseguir
Outra coisa Como Usar a procedure eu teria q colocar um Timagem? eu fiquei meio perdido.
Outra coisa Como Usar a procedure eu teria q colocar um Timagem? eu fiquei meio perdido.
GOSTEI 0
Cauê Nishijima
16/05/2014
Quem sabe com um exemplo de utilização fique mais fácil.
procedure Tform1.btn1Click(Sender: TObject); var foto: TPNGImage; begin foto := TPNGImage.Create; // Onde cdsConsulta é um TClientDataSet no qual esta a consulta, podendo usar outro componente // contanto que retorne um objeto do tipo TField carregaPNG(cdsConsultaFoto, foto); //Atribui a imagem a um TImage Image1.Picture.Assign(foto); end;
GOSTEI 0
Nelson Santos
16/05/2014
ganhe dinheiro com softwares 3D em Delphi 7
http://www.3dsistemas.com.br
http://www.3dsistemas.com.br
GOSTEI 0