Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

valdenir de matos

criar um editor de imagem

Recommended Posts

opa! beleza?

 

kra você pode fazer isto usando um TImage mesmo ...

tô bem 100tempo pra montar um exemplo, mais c você colocar o seguinte code no onMouseMove do TImage você consegue alguma coisa :

 

Image1.Canvas.LineTo(x,y);
dai basta você controlar de acordo com oque você precisa ...

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara beleza, isso é um grande começoconsegui fazer um monte de coisas, linhas, circulo, elipse, retangulos,cores, expessuras etcmas, tenho uma duvidasempre inicia do lado esquerdo superiorcomo faço pra iniciar apartir do ponto que clicoestou fazendo dessa formaprocedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);beginFlagDesenho := True;image1.canvas.LineTo(x, y,);Origem := Point(X, Y);MovePonto := Point(X, Y); //memoriza as coordenadas último movimento}end;procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);begincase Tdrawingtool offrLinha:beginimage1.Canvas.MoveTo(Origem.X, Origem.Y);image1.Canvas.LineTo(X, Y)end;frRetangulo: Canvas.Rectangle(Origem.X, Origem.Y, X, Y);frElipse: Canvas.Ellipse(Origem.X, Origem.Y, X, Y);frRetRedondo: Canvas.RoundRect(Origem.X, Origem.Y, X, Y, (Origem.X - X) div 2, (Origem.Y - Y) div 2);end;FlagDesenho := False;end;procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);beginif FlagDesenho thenbeginimage1.Canvas.Pen.Mode := pmNotXor;case Tdrawingtool offrLinha :beginimage1.Canvas.MoveTo(Origem.X, Origem.Y);image1.Canvas.LineTo(MovePonto.X, MovePonto.Y);image1.Canvas.MoveTo(Origem.X, Origem.Y);image1.Canvas.LineTo(X, Y);end;frRetangulo :beginimage1.Canvas.Rectangle(Origem.X, Origem.Y, MovePonto.X, MovePonto.Y);image1.Canvas.Rectangle(Origem.X, Origem.Y, X, Y);end;frElipse :beginimage1.Canvas.Ellipse(Origem.X, Origem.Y, X, Y);image1.Canvas.Ellipse(Origem.X, Origem.Y, X, Y);end;frRetRedondo :beginimage1.Canvas.RoundRect(Origem.X, Origem.Y, X, Y,(Origem.X - X) div 2, (Origem.Y - Y) div 2);image1.Canvas.RoundRect(Origem.X, Origem.Y, X, Y,(Origem.X - X) div 2, (Origem.Y - Y) div 2);end;end;MovePonto := Point(X, Y);end;image1.Canvas.Pen.Mode := pmCopy;

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.