also,
am besten führst du noch ne boolean variable iszoom oder so ein und wenn die true ist dann
Delphi-Quellcode:
if ssLeft in Shift then begin
Image1.Canvas.LineTo(X div 2, Y div 2); end;
image1.Canvas.Pen.Color:=ClRed;
image1.Canvas.Pen.Width:=3;
image1.Canvas.MoveTo(X div 2,Y div 2);
bzw halt deinen zoomfaktor den du hast, bei dir wars ja 2
Delphi-Quellcode:
Image1.Width:=2*Image1.Width;
Image1.Height:=2*Image1.Height;
oder du führst ne integer variable ein, die den zoomfaktor beinhaltet, und dann teilst du die position durch den faktor
und wenn die false ist bleibts halt so wie du es hattest
Edit: was du auch noch machen kannst ist beim Button1 und Button2 klicken :
Delphi-Quellcode:
// Button2
Image1.Width:=2*Image1.Width;
Image1.Height:=2*Image1.Height;
image1.picture.bitmap.height:=image1.height;
image1.picture.bitmap.width:=image1.width;
//Button1
Image1.Width:=Image1WidthOrg;
Image1.Height:=Image1HeightOrg;
image1.picture.bitmap.height:=image1.height;
image1.picture.bitmap.width:=image1.width;
dann kannst du dir das mit den variabeln sparen