我已经查看了Ghost-borders ('ringing') when resizing in GDI+之类的其他问题来尝试解决我的问题,但是他们并没有完全解决我遇到的问题,因为他们只是在解决问题时才解决问题图像。
我的图像在一半上是透明的而在另一半上是不透明的:
当我调整此图像的大小时,我得到一条非常微弱的灰色线条,其中透明和不透明的连接相当于红色254,绿色254,绿色254和alpha 199。
我用来调整图片大小的代码是:
public static Bitmap ResizeBitmap(Bitmap sourceBMP, int width, int height)
{
try
{
Bitmap result = new Bitmap(width, height);
using (Graphics g = Graphics.FromImage(result))
{
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
g.DrawImage(sourceBMP, 0, 0, width, height);
}
sourceBMP.Dispose();
sourceBMP = (Bitmap)result.Clone();
result.Dispose();
return sourceBMP;
}
catch (Exception ex)
{
return sourceBMP;
}
}
我已经尝试过更改合成模式,并且图像属性中的换行模式(我意识到这是没用的,因为我的问题不在边缘!)无济于事。如果可能的话,我将非常感谢能够提出解决方案的任何帮助。