Rotacionar imagem Jpeg

19/03/2008

0

Olá amigos, já procurei em todos os sites q conheço de programação em delphi e nada. encontrei como rotacionar mais é só bitmap, alguém sabe com rotacionar imagens em jpeg?
tô usando esse codigo pra rotacionar, mais como falei só funciona se for bitmap...

procedure TfrmPrincipal.btnRotaClick(Sender: TObject);
var
lbAuxiliar: TBitmap; // Aqui criamos um TBitmap auxiliar;
BackColor: TColor;
begin
if Assigned(img1.Picture.Bitmap) then
begin
// Obtendo a cor de fundo do bitmap:
BackColor := img1.Picture.Bitmap.TransparentColor and not $02000000;

lbAuxiliar := Rotacionar(img1.Picture.Bitmap, -90, BackColor);
try
lbAuxiliar.TransparentColor := BackColor;
lbAuxiliar.Transparent := img1.Picture.Bitmap.Transparent;
img1.Picture.Bitmap.Assign(lbAuxiliar);
finally
lbAuxiliar.Free;
end;
end;
end;


Nandobacker

Nandobacker

Responder

Posts

01/04/2021

Sady

Eu fiz uma conversão de JPEG para BMP, girei o BMP, converti novamente para JPEG e atribui ao componente.

procedure TfrmVizualizaFoto.btnGirarFotoEClick(Sender: TObject);
var
X, Y: integer;
BMPorigem, BMPdestino : TBitmap;
JPEGfinal : TJPEGImage;
begin
BMPorigem := TBitmap.Create;
BMPdestino := TBitmap.Create;
JPEGfinal := TJPEGimage.Create;
BMPorigem.Assign(fImgFoto.Picture.Graphic);
BMPdestino.Width := BMPorigem.Height;
BMPdestino.Height := BMPorigem.Width;
for X := 0 to BMPorigem.Width do
for Y := 0 to BMPorigem.Height do
BMPdestino.Canvas.Pixels[Y, BMPorigem.Width - X] := BMPorigem.Canvas.Pixels
[X,Y];
JPEGfinal.Assign(BMPdestino);
fImgFoto.Picture.Assign(JPEGfinal);
end;
Não sei se ajuda, mas funciona :D
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