【发布时间】:2016-03-04 11:34:46
【问题描述】:
现在我使用下一个代码将图片从桌面下载到 PictureBox
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = "BMP|*.bmp";
if (openFileDialog.ShowDialog() != DialogResult.OK)
return;
pictureBox.Load(openFileDialog.FileName);
pictureBox.SizeMode=PictureBoxSizeMode.StretchImage;
pictureBox.BorderStyle = BorderStyle.Fixed3D;
如果我使用普通图片(100x100),它看起来不错(不模糊)。
如果我使用小图片(15x15),它看起来很模糊。
我想知道如何使它们不模糊(它们可以看起来像砖,但它们需要不模糊);
小图的等待结果应该是这样的
普通图片的等待结果应该是这样的
【问题讨论】:
-
尝试将图片框大小更改为图像大小。如果你的图片被拉伸太多,它会看起来像这样。
-
它是模糊的,因为它正在抗锯齿。没有足够的图像数据来填充 100x100 的正方形,因此系统试图通过在可用像素上平滑图像来“填充空白”。没有真正的解决方案,您可以将图像设置为实际大小,在这种情况下不会发生缩放
-
PictureBox 在重新缩放图像以适应控件时,始终使用 Graphics.InterpolationMode 的“体面”值。您喜欢低质量的 InterpolationMode.NearestNeighbor。只需自己调整图像大小。
标签: c# image picturebox