有时,当我调整半透明 png 的大小时,我会在形状边缘上看到奇怪的白色像素。这只发生在具有形状的图像(不是照片)并且 when InterpolationMode
设置为HighQualityBicubic
. 有谁知道为什么这个白色像素显示?我只在一些图像上得到它们。
这是我得到的结果:
这是源文件:
这是类似的文件,不会导致“白色像素”效果。
绘制代码很简单:
Bitmap resize = new Bitmap(1024, 177, PixelFormat.Format32bppArgb);
using (Graphics g = Graphics.FromImage(resize))
{
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
g.DrawImage(Properties.Resources.Wave01, 0, 0, 1024, 177);
}
请注意,我使用HighQualityBicubic
该代码是因为该代码用于调整各种类型的图像(包括照片)的大小。使用InterpolationMode.Default
似乎可以解决问题,但是调整某些图像类型的大小可能会产生比HighQualityBicubic
.