Como girar imagem de forma rápida ?

03/11/2004

0

Boa tarde. Estou buscando saber como girar uma imagem (foto) .jpg ou .bmp em mais 90 ou menos 90 graus ( retrato paisagem ) em um compomente Timage.


Profamilton

Profamilton

Responder

Posts

03/11/2004

Beto_martini

Olá.

Não conheço nenhuma forma automatizada para isto.

via código, acho que vc. deveria criar um segundo timage, redimensiona-lo e copiar o conteúdo pixel por pixel de timage1 para timage2.

ex:

timage1.width = 200
timage1.height := 100

timage2.width := timage1.height
timage2.height := timage1.width

Então, construa função para copiar pixel por pixel.

timage2.canvas.pixels[x,y] := timage1.canvas.pixels[x,y]

Se precisar de ajuda para a função, entre em contato.

P.S: acho que a solução só funcionará para imagens BMP pois acredito que JPG não possui canvas.

Um abraço.

arm@netpar.com.br


Responder

03/11/2004

Profamilton

Olá.
A solução dada eu já tinha feito, porém achei muito demorada e custosa em termos de processamento. Pensei haver uma forma mais ´limpa´.
No visualizador do windows XP tem uma opção para isso que age muito mais rápido. É este efeito que busco. Mas agradeço sua atenção.


Responder

04/11/2004

Tatuweb

Os exemplos dos links abaixo devem resolver o problema. O que aconteçe é que vc está rotacionando o bitmap usando a propriedade pixels provavelmente atrelada a loops for. Nesse caso a cada pixel ´movido´ é como se vc re-desenhasse o bitmap, o que deixa a rotina lenta. A alternativa é usar as funções copyrect e/ou scanline.

Nesse link tem um exemplo simples par rotacionar um bitmap:
http://delphi.about.com/cs/adptips2001/a/bltip1201_4.htm

Aqui tem outro mais com explicações mais detalhadas sobre as funções scanline e copyrect:
http://www.efg2.com/Lab/ImageProcessing/RotateScanline.htm


Responder

01/04/2021

Sady

Nenhum dos links funciona. Eu estou com o mesmo problema de demora pra girar a imagem.
Para inverter a imagem eu achei uma solução rápida. Mas eu preciso girar a imagem.
JPEG não consegui girar.
Daí converti para BMP, girei a imagem e voltei a converter pra JPEG.
A conversão é rápida, mas o girar é demorado.
Se alguém puder dar alguma sugestão, eu agradeço!
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar