schaukoski Postado Fevereiro 15, 2007 Denunciar Share Postado Fevereiro 15, 2007 Olá, muito boa tarde.Tenho a seguinte dúvida, creio que possam me ajudar.Eu tenho uma imagem , em uma variaável do tipo TPicture, e , eu sei a extensão dela.Como converter tal extensão para .bmp?exemplo:bmp CONVERT extensaoatual TO .bmpaonde extensaoatual, é uma variavel, tipo string, que carrega a extensão dela.Se alguém puder me ajudar neste sentido, eu agradeço muito!Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Fevereiro 15, 2007 Denunciar Share Postado Fevereiro 15, 2007 opaé só você dar um Assign com uma variavel dotipo que você quer exemplovar_bmp: TBitmap;begin_bmp := TBitmap.Create;_bmp.Assign(SuaVarTPicture);_bmp.SavetoFile('caminho\nome.bmp');_bmp.Free;e pra jpg mesma coisa só troque deTBitmap pra TJpegImage e de _bmp pra _jpeg ouqualquer coisa, o nome da variavel não importa rse mude a extensão...abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Fevereiro 15, 2007 Autor Denunciar Share Postado Fevereiro 15, 2007 Churc, deu um erro aqui cara, vo postar meu Código fonte, dai você consegueenxergar melhor.erro: 'EconvertError: Cannot assing a TPicture to a TBitmap' procedure TFormTCadCF.SpeedButton1Click(Sender: TObject); var Picture: TPicture; BMP: TBitMap; begin Picture := graphics.TPicture.Create; BMP := graphics.TBitmap.Create; openpicturedialog1.Execute; if openpicturedialog1.FileName <> '' then begin Picture.LoadFromFile(openpicturedialog1.filename); BMP.Assign(Picture); //// aqui deu erro extensao := ExtractFileExt(OpenPictureDialog1.Filename); dbimage1.picture.assign(bmp); end Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Fevereiro 15, 2007 Denunciar Share Postado Fevereiro 15, 2007 (editado) opaEstranho era pra suportar, qual seu Delphi?De qualquer forma tenta assimBMP.Assign(Picture.Bitmap);Estranho que você está jogando pra uma variavel TPicturea imagem aberta, depois você joga pra um bitmap, e depoisvocê joga pra um tipo TPicture novamente a imagem bitmapnão seria mais fácildbimage1.picture.assign(Picture.Graphic);abraço Editado Fevereiro 15, 2007 por Churc Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Fevereiro 15, 2007 Autor Denunciar Share Postado Fevereiro 15, 2007 Testei desta forma também, ele não dá mais erro, mas aparece meu dbedit todo em branco....Delphi7 eu Uso.Obrigado Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Fevereiro 15, 2007 Denunciar Share Postado Fevereiro 15, 2007 Eu editei o post da uma olhada rs... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Fevereiro 15, 2007 Autor Denunciar Share Postado Fevereiro 15, 2007 Churc, não entendi muito bem...eu tenho a imagem que eu puxei do dialog, está em PICTURE, do tipo Tpicture, que aceita quase todo tipo de imagem.Esquece o resto agora, apaguei tudo...O que eu faço para converte-la para .bmp, e jogala no meu DBIMAGE?eu crio uma variavel pra receber a imagem em .bmp antes? , posso mudar pra .bmp pela variavel picture mesmo? o que eu faço? entendeu? eu tenho ela, na variável PICTURE, e quero passar ela pra outra variavel como .bmp, ou passar ela pro dbimage como .bmp..."Valeu" !!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Fevereiro 15, 2007 Denunciar Share Postado Fevereiro 15, 2007 OpaSeguinte, eu não mexo com BD mas no seu código eu vidbimage1.picture.assign <-- Isso quer dizer queo componente DBImage tem suporte a gráficos do tipoTPicture ou seja, BMP, JPEG, GIF, Etc...Sendo assim você faria, baseado no seu código...procedure TFormTCadCF.SpeedButton1Click(Sender: TObject); var Picture: TPicture; begin if openpicturedialog1.Execute then //Essa parte abaixo você pode corrigir colocando nos Options do OpenFileDialog //as propriedades para true: FileMustExists e PathMustExists //O que significa que ele só passa se o arquivo existir e o caminho existir if openpicturedialog1.FileName <> '' then begin Picture := graphics.TPicture.Create; Picture.LoadFromFile(openpicturedialog1.filename); extensao := ExtractFileExt(OpenPictureDialog1.Filename); dbimage1.picture.assign(Picture.Graphic); Picture.Free; end; end;Eu não testei, mas é pra funcionar...qualquer coisa posta ai...abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Fevereiro 15, 2007 Autor Denunciar Share Postado Fevereiro 15, 2007 Isso mesmo Churc, assim seria para salvar no banco de dados esses tijpos.O problema é que meu campo LONGBLOB mysql5, só aceita .bmp.O DBImage aceita mesmo, o problema pe o DB mesmo.então , eu tenho que converter para .bmp sacas? o que eu estou em busca é, de o DBImage receber a foto já convertida em .bmp pra depois eu dar o post.Valeu!! até mais! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Churc Postado Fevereiro 15, 2007 Denunciar Share Postado Fevereiro 15, 2007 Ahh... entendi!Você não tinha mencionado o porque rsentão tente assimvar Picture: TPicture; aBmp: TBitmap; begin if openpicturedialog1.Execute then //Essa parte abaixo você pode corrigir colocando nos Options do OpenFileDialog //as propriedades para true: FileMustExists e PathMustExists //O que significa que ele só passa se o arquivo existir e o caminho existir if openpicturedialog1.FileName <> '' then begin Picture := graphics.TPicture.Create; aBmp := TBitmap.Create; Picture.LoadFromFile(openpicturedialog1.filename); extensao := ExtractFileExt(OpenPictureDialog1.Filename); aBmp.Assign(Picture.Graphic); dbimage1.picture.assign(aBmp); Picture.Free; aBmp.Free; end;Abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Fevereiro 15, 2007 Autor Denunciar Share Postado Fevereiro 15, 2007 Churc, Deu certo sim mcara, gravou no banco de dados também.!!!!MUITO OBRIGADO!Até a próxima! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Micheus Postado Fevereiro 16, 2007 Denunciar Share Postado Fevereiro 16, 2007 schaukoski, no seu outro post (Image, Como Saber Formato (extensão) Da Picture., saber se é .JPEG, .BMP ou .JPG) observando que você provavelmente precisava converter para bmp a imagem carregada eu havia colocado uma opção que também pode ser útil -> Post- Faz o resize proporcional (thumbnail);- Grava em arquivo ou campo do banco;- Não importa o formato de entrada - saída é BMP;Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 schaukoski Postado Fevereiro 16, 2007 Autor Denunciar Share Postado Fevereiro 16, 2007 Exatamente Micheus. era isso que eu estava procurando. excelente! "VALEU !" Até mais. Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
schaukoski
Olá, muito boa tarde.
Tenho a seguinte dúvida, creio que possam me ajudar.
Eu tenho uma imagem , em uma variaável do tipo TPicture, e , eu sei a extensão dela.
Como converter tal extensão para .bmp?
exemplo:
bmp CONVERT extensaoatual TO .bmp
aonde extensaoatual, é uma variavel, tipo string, que carrega a extensão dela.
Se alguém puder me ajudar neste sentido, eu agradeço muito!
Obrigado!
Link para o comentário
Compartilhar em outros sites
12 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.