RES: RES: RES: RES: Res: [delphi-br] Salvar uma imagem
Bom dia Carlos, Me desculpa a ignorância.. mas ainda não consegui exibir a imagem no Timage para salva-la. Salvar a imagem do Timage tudo bem.. mas o erro da quando vou atribuir a imagem do campo da tabela paradox para o compomente. Na função ExibeFoto quando é executada, como ele verifica se é JPG ou BPM.. pq ele sempre executa esta parta do código como se fosse um JPG. JpegImage := TJPEGImage.Create; try JpegImage.LoadFromStream(BlobStream); // neste nomento da o erro, ele não consegui ler a imagem, da JPEG error #53 Por isto acho q as fotos salvas no banco são BMP. ImageExibicao.Picture.Assign(JpegImage); ImageExibicao.Center:=true; finally BlobStream.Free; JpegImage.Free; end; na parte do BMP não deveria carregar a imagem como no JPG JpegImage.LoadFromStream(BlobStream); como ele mostraria a imagem no componente sem atribuir Bitmat Bitmap:=TBitMap.Create; Try Bitmap.Width:=1; Bitmap.Height:=1; ImageExibicao.Picture.Assign(BitMap); ImageExibicao.Center:=false; finally Bitmap.Free; BlobStream.Free; end; Dimas. _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Carlos Enviada em: terça-feira, 19 de agosto de 2008 12:29 Para: delphi-br@yahoogrupos.com.br Assunto: Re: RES: RES: RES: Res: [delphi-br] Salvar uma imagem Não tem problema meu camarada! Apenas mude a linha img1.Picture.SaveToFile('Caminho' + NomeDoArquivo); Exemplo: img1.Picture.SaveToFile('C:\Monit\bin\arqs\' + dmCadastro.cdsFotoFoto.Value); O 'NomeDoArquivo' é o campo da tabela onde se encontra a imagem no banco de dados. Espero ter ajudado, mas qualquer coisa, estamos ai. Fraterno abraço, Carlos No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.138 / Virus Database: 270.6.5/1620 - Release Date: 19/8/2008 06:04 [As partes desta mensagem que não continham texto foram removidas]
RES: RES: RES: RES: Res: [delphi-br] Salvar uma imagem
Bom dia, Este banco q to tentando extrair as fotos não é meu e sim de um outro programa onde estou fazendo a conversão dos dados para o meu sistema, e não sei Se as fotos foram salvas em .JPG ou BMP.. e se foram slavas em BMP? _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Carlos Enviada em: segunda-feira, 18 de agosto de 2008 23:50 Para: delphi-br@yahoogrupos.com.br Assunto: Re: RES: RES: RES: Res: [delphi-br] Salvar uma imagem Meu camarada, boa noite! Você informou que a imagem já está salva no banco de dados em formato JPG correto. Em caso afirmativo, eu pus no meu form um TImage(propriedade visible = false), e usei a função ExibeFoto para inseri-la no TImage desta forma: TImage.Picture := nil; ExibeFoto(Nome do DataSet, 'campo', TImage); neste momento a imagem está no TImage; para salva-la em disco, eu uso desta forma: TImage.Picture.SaveToFile('Nome do caminho a ser salvo tipo C:\temp\' + Nome do dataSet com o campo ex: DataSetFoto.Value + '.jpg'); limpo o TImage TImage.Picture := Nil veja o pedaço do meu código e veja se consegue achar o erro: img1.Picture := nil; ExibeFoto(dmCadastro.cdsFoto, 'foto', img1); img1.Picture.SaveToFile('C:\Monit\bin\arqs\' + dmCadastro.cdsFotonome.Value + '.jpg'); img1.Picture := nil; Espero ter ajudado. Fraterno abraço, Carlos No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.138 / Virus Database: 270.6.5/1619 - Release Date: 18/8/2008 17:39 [As partes desta mensagem que não continham texto foram removidas]
Re: RES: RES: RES: Res: [delphi-br] Salvar uma imagem
Não tem problema meu camarada! Apenas mude a linha img1.Picture.SaveToFile('Caminho' + NomeDoArquivo); Exemplo: img1.Picture.SaveToFile('C:\Monit\bin\arqs\' + dmCadastro.cdsFotoFoto.Value); O 'NomeDoArquivo' é o campo da tabela onde se encontra a imagem no banco de dados. Espero ter ajudado, mas qualquer coisa, estamos ai. Fraterno abraço, Carlos
RES: RES: Res: [delphi-br] Salvar uma imagem
Bom dia Carlos, Sem querer abusar da sua boa vontade, poderia me passar a função ExibeFoto. Anteriormente você me passou a Grava_Imagem_JPEG, não tenho este ExibeFoto. Obrigado. _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Carlos Enviada em: sexta-feira, 15 de agosto de 2008 16:43 Para: delphi-br@yahoogrupos.com.br Assunto: Re: RES: Res: [delphi-br] Salvar uma imagem Meu camarada, boa tarde! Quanto a caixa alta, sem problemas, esta vida de desenvolvedor deixa qualquer um meio fora de foco às vezes... rsrs... Eu salvo a imagem em disco de duas formas: 1ª Se o cliente ira visualizar a imagem em um TImage e após isso irá salvar a imagem em um diretório a sua escolha, então coloco um componente TSavePictureDialog da Paleta Dialogs e uso essa procedure no evento onClik do button: procedure TfCadEfetivo.aExportarFotoExecute(Sender: TObject); Var MyJPEG : TJPEGImage; begin if dlgSave.Execute then begin // se a extensão for .jpeg, salva no formato JPEG, senão salva em BMP if UpperCase(ExtractFileExt(dlgSave.FileName)) = '.JPG' then begin MyJPEG := TJPEGImage.Create; // Converte o BMP para JPEG with MyJPEG do begin Assign(imgFoto.Picture); SaveToFile(dlgSave.FileName); Free; end; end else imgFoto.Picture.SaveToFile(dlgSave.FileName); end; end; Agora, se é para salvar a imagem em um local específico, então coloco um TImage, deixo sua propriedade como Visible = False, euso este pequeno pedaço de código(é evidente que só coloquei o que acho que precisa, nada impede que vc implemente este modelo): img1.Picture := nil; funcoes.ExibeFoto(NomeDaTabela, 'foto', img1); img1.Picture.SaveToFile(Caminho + CampoTabelaComNomeImagem + '.jpg'); img1.Picture := nil; A função ExibeFoto te mandei anteriormente. Espero que te ajude, mas, qualquer dúvida poste ai para nós, e caso tenha resolvido de outra forma, por favor, nos mostre como. Fraterno abraço, Carlos No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.138 / Virus Database: 270.6.3/1613 - Release Date: 15/8/2008 05:58 [As partes desta mensagem que não continham texto foram removidas]
Re: RES: RES: Res: [delphi-br] Salvar uma imagem
É claro meu camarada, não é abuso nenhum, aliás, é uma correção, haja vista eu achava que já a tinha enviado. procedure ExibeFoto(DataSet : TDataSet; BlobFieldName : String; ImageExibicao : TImage); var BlobStream : TStream; JpegImage : TJPEGImage; bitmap:TBitMap; begin BlobStream := DataSet.CreateBlobStream(DataSet.FieldByname(BlobFieldName), bmRead); if BlobStream.Size 0 then begin JpegImage := TJPEGImage.Create; try JpegImage.LoadFromStream(BlobStream); ImageExibicao.Picture.Assign(JpegImage); ImageExibicao.Center:=true; finally BlobStream.Free; JpegImage.Free; end; end else begin Bitmap:=TBitMap.Create; Try Bitmap.Width:=1; Bitmap.Height:=1; ImageExibicao.Picture.Assign(BitMap); ImageExibicao.Center:=false; finally Bitmap.Free; BlobStream.Free; end; end; end; Fraterno abraço Carlos
RES: RES: RES: Res: [delphi-br] Salvar uma imagem
Boa tarde Carlos, Não consigo fazer funcionar.. me retorna este errro JPEG ERROR #53. img1.Picture := nil; ExibeFoto(NTClientes, 'foto', img1); img1.Picture.SaveToFile('C:\DBSOFT\FOTOCLIENTES\FOTO1.jpg'); img1.Picture := nil; _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Carlos Enviada em: segunda-feira, 18 de agosto de 2008 09:54 Para: delphi-br@yahoogrupos.com.br Assunto: Re: RES: RES: Res: [delphi-br] Salvar uma imagem É claro meu camarada, não é abuso nenhum, aliás, é uma correção, haja vista eu achava que já a tinha enviado. procedure ExibeFoto(DataSet : TDataSet; BlobFieldName : String; ImageExibicao : TImage); var BlobStream : TStream; JpegImage : TJPEGImage; bitmap:TBitMap; begin BlobStream := DataSet.CreateBlobStream(DataSet.FieldByname(BlobFieldName), bmRead); if BlobStream.Size 0 then begin JpegImage := TJPEGImage.Create; try JpegImage.LoadFromStream(BlobStream); ImageExibicao.Picture.Assign(JpegImage); ImageExibicao.Center:=true; finally BlobStream.Free; JpegImage.Free; end; end else begin Bitmap:=TBitMap.Create; Try Bitmap.Width:=1; Bitmap.Height:=1; ImageExibicao.Picture.Assign(BitMap); ImageExibicao.Center:=false; finally Bitmap.Free; BlobStream.Free; end; end; end; Fraterno abraço Carlos No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.138 / Virus Database: 270.6.5/1618 - Release Date: 18/8/2008 06:51 [As partes desta mensagem que não continham texto foram removidas]
Re: RES: RES: RES: Res: [delphi-br] Salvar uma imagem
Meu camarada, boa noite! Você informou que a imagem já está salva no banco de dados em formato JPG correto. Em caso afirmativo, eu pus no meu form um TImage(propriedade visible = false), e usei a função ExibeFoto para inseri-la no TImage desta forma: TImage.Picture := nil; ExibeFoto(Nome do DataSet, 'campo', TImage); neste momento a imagem está no TImage; para salva-la em disco, eu uso desta forma: TImage.Picture.SaveToFile('Nome do caminho a ser salvo tipo C:\temp\' + Nome do dataSet com o campo ex: DataSetFoto.Value + '.jpg'); limpo o TImage TImage.Picture := Nil veja o pedaço do meu código e veja se consegue achar o erro: img1.Picture := nil; ExibeFoto(dmCadastro.cdsFoto, 'foto', img1); img1.Picture.SaveToFile('C:\Monit\bin\arqs\' + dmCadastro.cdsFotonome.Value + '.jpg'); img1.Picture := nil; Espero ter ajudado. Fraterno abraço, Carlos
Res: [delphi-br] Salvar uma imagem
Que tipo de objeto é esse NTClientesfoto? Luciano Calenzani Simões - Mensagem original De: Dimas Bolognani [EMAIL PROTECTED] Para: delphi-br@yahoogrupos.com.br Enviadas: Sexta-feira, 15 de Agosto de 2008 8:31:59 Assunto: [delphi-br] Salvar uma imagem Bom dia pessoal, Preciso salvar algumas fotos armazenadas em banco de dados Paradox p/ um JPG ou BMP, qual sabe como fazer? Tentei assim NTClientesfoto. SaveToFile( 'C:\foto. jpg'); mas não salda a imagem. Dimas Bolognani Ouro Fino - MG Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail.com. http://br.new.mail.yahoo.com/addresses [As partes desta mensagem que não continham texto foram removidas]
RES: [delphi-br] Salvar uma imagem
É apenas o nome da Table e o nome do campo que contem a foto. _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Luciano Calenzani Simões Enviada em: sexta-feira, 15 de agosto de 2008 08:38 Para: delphi-br@yahoogrupos.com.br Assunto: Res: [delphi-br] Salvar uma imagem Que tipo de objeto é esse NTClientesfoto? Luciano Calenzani Simões - Mensagem original De: Dimas Bolognani [EMAIL PROTECTED] mailto:dimas%40dbsoftinformatica.com.br tica.com.br Para: [EMAIL PROTECTED] mailto:delphi-br%40yahoogrupos.com.br os.com.br Enviadas: Sexta-feira, 15 de Agosto de 2008 8:31:59 Assunto: [delphi-br] Salvar uma imagem Bom dia pessoal, Preciso salvar algumas fotos armazenadas em banco de dados Paradox p/ um JPG ou BMP, qual sabe como fazer? Tentei assim NTClientesfoto. SaveToFile( 'C:\foto. jpg'); mas não salda a imagem. Dimas Bolognani Ouro Fino - MG Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara @ymail.com ou @rocketmail.com. http://br.new. http://br.new.mail.yahoo.com/addresses mail.yahoo.com/addresses [As partes desta mensagem que não continham texto foram removidas] No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.138 / Virus Database: 270.6.3/1611 - Release Date: 14/8/2008 06:20 [As partes desta mensagem que não continham texto foram removidas]
RES: Res: [delphi-br] Salvar uma imagem
Bom dia, Não quero salvar uma imagem no banco.. QUERO LER A IMAGEM DO BANCO E SALVAR EM JPG. _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Carlos Enviada em: sexta-feira, 15 de agosto de 2008 09:38 Para: delphi-br@yahoogrupos.com.br Assunto: Re: Res: [delphi-br] Salvar uma imagem Meu camarada, bom dia! Vamos ver se eu entendi.Você quer salvar imagens em BD no formato JPG ou BPM, é isso? Caso seja isto, vc pode usar a função abaixo: procedure GravaFoto(DataSet : TDataSet; BlobFieldName, FileName : String; Nome: String); var ext, mDir, mSql : string; JpegImage : TJPEGImage; bitmap:TBitMap; begin DataSet.Insert; if (DataSet.State in [dsEdit,dsInsert]) then begin mDir := ExtractFileDir(FileName); ext := UpperCase(ExtractFileExt(FileName)); if (ext '.BMP') and (ext '.JPG') and (ext '.JPEG') then begin raise EAccessViolation.Create('Formato de imagem não suportado! '+ 'Formato suportado: Jpeg ou Bitmap'); Abort; end; try JpegImage := TJpegImage.Create; Bitmap := TBitmap.Create; if (ext = '.BMP') then begin Bitmap.LoadFromFile(FileName); JpegImage.Assign(Bitmap); JpegImage.Compress; end else JpegImage.LoadFromFile(FileName); JpegImage.SaveToFile(Nome + '.JPG'); (DataSet.FieldByName(BlobFieldName) as TBlobField).LoadFromFile(Nome + '.JPG'); DataSet.Post; DeleteFile(PChar(FileName)); DeleteFile(PChar(mDir + '.JPG')); finally Bitmap.Free; JpegImage.Free; end; end; end; Espero ter ajudado, Fraterno abraço, Carlos No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.138 / Virus Database: 270.6.3/1611 - Release Date: 14/8/2008 06:20 [As partes desta mensagem que não continham texto foram removidas]
RES: Res: [delphi-br] Salvar uma imagem
Carlos me desculpa pela caixa alta na mensagem anterior... não tinha reparado. _ De: delphi-br@yahoogrupos.com.br [mailto:[EMAIL PROTECTED] Em nome de Carlos Enviada em: sexta-feira, 15 de agosto de 2008 09:38 Para: delphi-br@yahoogrupos.com.br Assunto: Re: Res: [delphi-br] Salvar uma imagem Meu camarada, bom dia! Vamos ver se eu entendi.Você quer salvar imagens em BD no formato JPG ou BPM, é isso? Caso seja isto, vc pode usar a função abaixo: procedure GravaFoto(DataSet : TDataSet; BlobFieldName, FileName : String; Nome: String); var ext, mDir, mSql : string; JpegImage : TJPEGImage; bitmap:TBitMap; begin DataSet.Insert; if (DataSet.State in [dsEdit,dsInsert]) then begin mDir := ExtractFileDir(FileName); ext := UpperCase(ExtractFileExt(FileName)); if (ext '.BMP') and (ext '.JPG') and (ext '.JPEG') then begin raise EAccessViolation.Create('Formato de imagem não suportado! '+ 'Formato suportado: Jpeg ou Bitmap'); Abort; end; try JpegImage := TJpegImage.Create; Bitmap := TBitmap.Create; if (ext = '.BMP') then begin Bitmap.LoadFromFile(FileName); JpegImage.Assign(Bitmap); JpegImage.Compress; end else JpegImage.LoadFromFile(FileName); JpegImage.SaveToFile(Nome + '.JPG'); (DataSet.FieldByName(BlobFieldName) as TBlobField).LoadFromFile(Nome + '.JPG'); DataSet.Post; DeleteFile(PChar(FileName)); DeleteFile(PChar(mDir + '.JPG')); finally Bitmap.Free; JpegImage.Free; end; end; end; Espero ter ajudado, Fraterno abraço, Carlos No virus found in this incoming message. Checked by AVG - http://www.avg.com Version: 8.0.138 / Virus Database: 270.6.3/1611 - Release Date: 14/8/2008 06:20 [As partes desta mensagem que não continham texto foram removidas]
Re: RES: Res: [delphi-br] Salvar uma imagem
Meu camarada, boa tarde! Quanto a caixa alta, sem problemas, esta vida de desenvolvedor deixa qualquer um meio fora de foco às vezes... rsrs... Eu salvo a imagem em disco de duas formas: 1ª Se o cliente ira visualizar a imagem em um TImage e após isso irá salvar a imagem em um diretório a sua escolha, então coloco um componente TSavePictureDialog da Paleta Dialogs e uso essa procedure no evento onClik do button: procedure TfCadEfetivo.aExportarFotoExecute(Sender: TObject); Var MyJPEG : TJPEGImage; begin if dlgSave.Execute then begin // se a extensão for .jpeg, salva no formato JPEG, senão salva em BMP if UpperCase(ExtractFileExt(dlgSave.FileName)) = '.JPG' then begin MyJPEG := TJPEGImage.Create; // Converte o BMP para JPEG with MyJPEG do begin Assign(imgFoto.Picture); SaveToFile(dlgSave.FileName); Free; end; end else imgFoto.Picture.SaveToFile(dlgSave.FileName); end; end; Agora, se é para salvar a imagem em um local específico, então coloco um TImage, deixo sua propriedade como Visible = False, euso este pequeno pedaço de código(é evidente que só coloquei o que acho que precisa, nada impede que vc implemente este modelo): img1.Picture := nil; funcoes.ExibeFoto(NomeDaTabela, 'foto', img1); img1.Picture.SaveToFile(Caminho + CampoTabelaComNomeImagem + '.jpg'); img1.Picture := nil; A função ExibeFoto te mandei anteriormente. Espero que te ajude, mas, qualquer dúvida poste ai para nós, e caso tenha resolvido de outra forma, por favor, nos mostre como. Fraterno abraço, Carlos