简体   繁体   中英

Getting “image” coordinates of picturebox in zoom mode

I am using a zoomed picturebox. I want to retrieve the image Top-Left and Bottom-Right coordinates. But it is different from that of picturebox when the aspect ratio of the image doesn't match the picturebox. I wonder how I can get the image coordinates on the form.

Minus the Image size divided by 2 from the PictureBox size plus the Image size again.

This uses the Size.Subtract Method (Size, Size) . MSDN

Size sizestep1 = Size.Subtract(new Size(PictureBox1.Image.Size.Width / 2, PictureBox1.Image.Size.Height / 2), PictureBox1.Size);
Size finalsize = Size.Add(sizestep1, PictureBox1.Image.Size);

// Convert to point.
Point BottomRightCoords = new Point(finalsize.Width, finalsize.Height);

And if you want to get the BottomRightCoords on the form, you have to add the PictureBox Location to it.

上面提到的一点数学+以下链接中的代码就可以解决这个问题: 如何检索WinForms PictureBox的缩放因子?

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM