Girar imagem
Utilizei um código fornecido no fórum para girar uma imagem, só que funciona perfeitamente para imagens ´quadradas´. Quando se faz uso de uma imagem retangular, o resultado é uma imagem cortada, ou seja ela fica quadrada...
Há solução?
Há solução?
Caco
Curtidas 0
Respostas
Rafael.valler
26/04/2004
Tenta pra ver se funciona:
Altura := Largura
Largura:= Altura
Altura := Largura
Largura:= Altura
GOSTEI 0
Flaviosan
26/04/2004
caro caco, a ideia do nosso amigo rafael não esta totalmente errada, mas como ele colocou a altura recebendo a largura e depois a largura recebendo a altura, o valor da largura ficara igual pois recebera seu proprio valor que foi passado para a altura anteriormente. para resolver isso crie uma variavel auxiliar e use o seguinte codigo:
Espero ter ajudado.
Auxiliar := Altura; Altura := Largura; Largura := Auxiliar;
Espero ter ajudado.
GOSTEI 0
Nigro
26/04/2004
Pelo que vi vocês são feras em imagens
Eu abri o graphex que vem com o Delphi, porém não consigo criar uma ferramenta que ´pinte´ um polígono irregular desenhado pelo usuário, o código que eu tenho é:
Canvas.Brush.Color := clRed;
Canvas.FloodFill(100, 80, clBtnFace, fsBorder);
Forneceeido pelo colega Beppe.
:arrow: Obrigado
Eu abri o graphex que vem com o Delphi, porém não consigo criar uma ferramenta que ´pinte´ um polígono irregular desenhado pelo usuário, o código que eu tenho é:
Canvas.Brush.Color := clRed;
Canvas.FloodFill(100, 80, clBtnFace, fsBorder);
Forneceeido pelo colega Beppe.
:arrow: Obrigado
GOSTEI 0
Flaviosan
26/04/2004
Olha nigro, eu não manjo nada de manipulação de imagens, só corrigi um erro basico e muito frequente de programacao.
Desculpe não poder ajudar.
Desculpe não poder ajudar.
GOSTEI 0
Caco
26/04/2004
Olha nigro, eu não manjo nada de manipulação de imagens, só corrigi um erro basico e muito frequente de programacao.
Desculpe não poder ajudar.
Na verdade já havia tentado este artifício com algumas linhas de código dizendo que a largura da imagem destino seria igual à altura da imagem de origem e etc, mas não funcionou, corta a imagem da mesma forma...
GOSTEI 0
Cebikyn
26/04/2004
Qual código vc está usando para girar a imagem?
GOSTEI 0
Caco
26/04/2004
Qual código vc está usando para girar a imagem?
Olá! Na verdade estou usando o código que você citou em outro tópico ´Girar em tantos graus´ que utiliza o TBitmap.
Agradeço qualquer auxílio que possa me dar!
GOSTEI 0
Cebikyn
26/04/2004
Aquele código deveria funcionar com imagens de qualquer tamanho, seja quadrada ou não. Uma coisa que eu sei que acontece é que ele corta a imagem nas bordas quando ela é girada. Mas existem outras opções além daquele código (como este: http://www.swissdelphicenter.ch/en/showcode.php?id=1540 ), e também uma coleção de componentes que eu gosto muito ( Graphics32 - www.g32.org - freeware c/ código fonte ) que trabalha com imagens, e gira imagens do jeio que vc quiser, até mesmo sem cortar as bordas (ela redimensiona a figura ao rotacionar e tb faz o anti-aliazing das bordas).
De qualquer forma eu vou dar uma olhada no código para ver o que está acontecendo.
De qualquer forma eu vou dar uma olhada no código para ver o que está acontecendo.
GOSTEI 0
Caco
26/04/2004
Aquele código deveria funcionar com imagens de qualquer tamanho, seja quadrada ou não. Uma coisa que eu sei que acontece é que ele corta a imagem nas bordas quando ela é girada. Mas existem outras opções além daquele código (como este: http://www.swissdelphicenter.ch/en/showcode.php?id=1540 ), e também uma coleção de componentes que eu gosto muito ( Graphics32 - www.g32.org - freeware c/ código fonte ) que trabalha com imagens, e gira imagens do jeio que vc quiser, até mesmo sem cortar as bordas (ela redimensiona a figura ao rotacionar e tb faz o anti-aliazing das bordas).
De qualquer forma eu vou dar uma olhada no código para ver o que está acontecendo.
Exatamente, esse código ´corta´ as bordas maiores de uma imagem retangular. De qualquer forma vou dar uma olhada nas dicas que me passou. Obrigado.
GOSTEI 0
Cebikyn
26/04/2004
Exatamente, esse código ´corta´ as bordas maiores de uma imagem retangular.
Se o problema é esse, então vc tem que usar a Graphics32, pois todos os códigos convencionais fazem isso. De início, eu achei que vc estivesse falando que o código não funcionasse com as imagens retangulares...
GOSTEI 0
Caco
26/04/2004
[quote:4c056c4f03=´Caco´]Exatamente, esse código ´corta´ as bordas maiores de uma imagem retangular.
Se o problema é esse, então vc tem que usar a Graphics32, pois todos os códigos convencionais fazem isso. De início, eu achei que vc estivesse falando que o código não funcionasse com as imagens retangulares...[/quote:4c056c4f03]
Muito obrigado, baixei e instalei o Graphics32 e resolvi definitivamente meu problema. Lhe sou muito grato pela ajuda! :P
GOSTEI 0