调整 PictureBox 中图像的大小,直到它是原始图像的大小
Resize an image in a PictureBox until it is the size of the original image
我想要 PictureBox 中的图像,它会根据 window 的大小自动调整,但不大于原始图像。虽然 PictureBoxSizeMode.Zoom
几乎做到了这一点,但当 PictureBox 大于图像时,它会导致图像像素化。我目前正在调整大小时执行此代码:
if (pBox.Height * pBox.Height < pBox.Image.Width * pBox.Image.Height) pBox.SizeMode = PictureBoxSizeMode.Zoom;
else pBox.SizeMode = PictureBoxSizeMode.CenterImage;
虽然这在大多数情况下都有效,但有时图像不会恢复为缩放:
有没有更好的方法来解决这个问题?
如何将最大尺寸设置为图像尺寸:
pictureBox1.MaximumSize = pictureBox1.Image.Size;
结合:
pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
您应该使用 "if (pBox.Width * pBox.Height < pBox.Image.Width * pBox.Image.Height)" if() 语句。 pBox 的两个维度都作为高度,可能会导致一些问题。检查一下
我想要 PictureBox 中的图像,它会根据 window 的大小自动调整,但不大于原始图像。虽然 PictureBoxSizeMode.Zoom
几乎做到了这一点,但当 PictureBox 大于图像时,它会导致图像像素化。我目前正在调整大小时执行此代码:
if (pBox.Height * pBox.Height < pBox.Image.Width * pBox.Image.Height) pBox.SizeMode = PictureBoxSizeMode.Zoom;
else pBox.SizeMode = PictureBoxSizeMode.CenterImage;
虽然这在大多数情况下都有效,但有时图像不会恢复为缩放:
有没有更好的方法来解决这个问题?
如何将最大尺寸设置为图像尺寸:
pictureBox1.MaximumSize = pictureBox1.Image.Size;
结合:
pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
您应该使用 "if (pBox.Width * pBox.Height < pBox.Image.Width * pBox.Image.Height)" if() 语句。 pBox 的两个维度都作为高度,可能会导致一些问题。检查一下