[firebase-br] Não estou conseguindo imprimir imagens jpg no firebird com IBO
Eduardo Jedliczka
jedyfb em gmail.com
Sex Abr 24 23:49:37 -03 2009
Não estou em condições de fazer testes com o IBO (e nem com o delphi)
então, eu sugeriria que você olhasse entre os métodos do IB_JPEGImage se
existe algum image.savetostream, se há um canvas no componente.
Se houver um canvas, pode-se copiar o conteúdo do campo diretamente para
o TQRImage. Mas eu me lembro que havia uma propriedade que contém a
imagem como bitmap... talvez você consiga dar um AssignTo...
Abraço
Eduardo
Em Sex, 2009-04-24 às 23:06 -0300, NextCorp Informática escreveu:
> Caro Eduardo
>
> Estou salvando as imagens em blobs, em um campo de imagen do IBO,
> IB_JPEGImage. São imagens scaneadas/fotografadas que simplesmente são salvas
> no banco.
>
> Mas o problema está em visualiar estas imagens em um relatório.
>
> Para diminuir o tamanho do banco, estás imagens estão sendo salvas em .jpg.
> O problema, é que QR, com o componente QRDBImage, só carrega no picture
> imagens em BMP, então no BeforePrint do DetailBand do QR, utilizo a rotina
> abaixo para converter esta imagem jpg para bmp para ser visualizado em
> QRImage2.
>
> Encontrei as 3 formas abaixo para mostrar está imagem no relatório, tanto no
> help como google, mas não está funcionando.
>
> //BlobStream := TIBBlobStream.Create;
> //BlobStream :=
> dmDados.IBO_qryRelatorio1.CreateBlobStream(dmDados.IBO_qryRelatorio1.FieldByName('exe_img'),
> bmRead); //// aqui por exemplo o delphi dá erro no bmRead, mesmo utilizando
> a mesma sintase do help.
> //BlobStream := TIBBlobStream.Create(IBO_qryRelatorio1exe_img, bmRead);
> //// está é uma outra forma que encontrei para carregar a imagem para o
> blobstream mas tb não funciona.
>
> Um abraço
>
> washington
>
>
> ----- Original Message -----
> From: "Eduardo Jedliczka" <jedyfb em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Friday, April 24, 2009 10:46 PM
> Subject: Re: [firebase-br] Não estou conseguindo imprimir imagens jpg no
> firebird com IBO
>
>
> Aqui não é uma lista de delphi, mas por se tratar de BLOBS do FireBird,
> vamos lá:
>
> Este TJpegImage é aquela versão disponibilizada no próprio delphi (no
> diretório de extras do CD) ou é alguma outra ?
>
> Como estas imagens foram gravadas no banco ? Foram geradas pelo seu
> aplicativo (neste caso como está o código) ou geradas por outro ?
>
> Como você faz para exibir estas imagens pelo seu programa (ou você não
> exibe) ?
>
> Já vi muita incompatibilidade entre algumas rotinas que tratam JPEG e
> PNG nas versões mais antigas do Delphi (só funcionam usando a mesma
> biblioteca).
>
> Abraço
>
> Eduardo.
>
> Em Sex, 2009-04-24 às 22:21 -0300, NextCorp Informática escreveu:
>
> > Caros colegas
> >
> > Tenho um banco com diversas imagens salvas no formato .jpg e para imprimir
> > no QR sei que tenho que utilizar o BlobStream para poder imprimir, mas não
> > funciona
> > .
> > Estou utilizando a rotina abaixo, mas nenhuma das linha entre ###### e
> > ###### não está funcionando.
> > Se alguém poder dar uma olhada, agradeço.
> >
> > Utilizo delphi 5, IBO, fire 2.1.2 e QR.
> >
> >
> > procedure TfmqrPlanilhaTreinos.DetailBand1BeforePrint(
> > Sender: TQRCustomBand; var PrintBand: Boolean);
> > var
> > BlobStream : TIBBlobStream;
> > jpgFoto : TJPEGImage;
> > begin
> > if QRDBImage1.Picture = nil then
> > begin
> > QRImage2.Picture.Bitmap.FreeImage;
> > QRImage2.Refresh;
> > end;
> > ################### nenhuma destas opções funciona, testei destas 3
> > formas, consultando o help do delphi e o google.
> >
> > //BlobStream := TIBBlobStream.Create;
> > //BlobStream :=
> > dmDados.IBO_qryRelatorio1.CreateBlobStream(dmDados.IBO_qryRelatorio1.FieldByName('exe_img'),
> > bmRead);
> > //BlobStream := TIBBlobStream.Create(IBO_qryRelatorio1exe_img,
> > bmRead);
> >
> > ######################################################
> >
> >
> > jpgFoto := TJPEGImage.Create;
> >
> >
> > try
> > jpgFoto.LoadFromStream(BlobStream);
> > QRImage2.Picture.Assign(jpgFoto);
> > finally
> > jpgFoto.Free;
> > BlobStream.Free;
> > end;
> > end;
> >
> >
> > Atenciosamente
> >
> > Washington André Muller da silva
> >
> > #######################
> > NextCorp Informática Ltda
> > www.nextcorp.com.br
> > nextcorp em terra.com.br
> > 0xx-(51)-3037-6605
> > #######################
> > ______________________________________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/artigo.php?id=1107
> > Para consultar mensagens antigas: http://firebase.com.br/pesquisa
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> E-mail verificado pelo Terra Anti-Spam.
> Para classificar esta mensagem como spam ou não spam, visite
> http://ecp.terra.com.br/cgi-bin/reportspam.cgi?+_d=SCY0NzQ4MTEjcGVybSF0ZXJyYSYxLDEyNDA2MjQxMzEuODc5NjMuMzI1MjIuZW1icm8udHBuLnRlcnJhLmNvbSw3MDMwTerraMail
> Verifique periodicamente a pasta Spam para garantir que apenas mensagens
> indesejadas sejam classificadas como Spam.
>
>
>
>
> --------------------------------------------------------------------------------
>
>
>
> No virus found in this incoming message.
> Checked by AVG - www.avg.com
> Version: 8.0.238 / Virus Database: 270.12.4/2078 - Release Date: 04/24/09
> 07:54:00
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use: http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista