保存位图时背景变为黑色-C#
c#
image-processing
5
0

我目前正在尝试保存位图图像,但是背景正变为黑色。

我可以将“另存为”图像完美地显示出来。我也可以“保存”图像。这要困难得多,因为我必须覆盖现有图像。

但是,当我“保存”我的图像时,背景会变黑。我不知道是什么原因造成的。

这是我的代码:

Bitmap tempImage = new Bitmap(DrawArea);

DrawArea.Dispose();

if (extension == ".jpeg")
    tempImage.Save(fileName, System.Drawing.Imaging.ImageFormat.Jpeg);
else
    tempImage.Save(fileName, System.Drawing.Imaging.ImageFormat.Bmp);

DrawArea = new Bitmap(tempImage);
pictureBox1.Image = DrawArea;

tempImage.Dispose();
参考资料:
Stack Overflow
收藏
评论
共 2 个回答
高赞 时间 活跃

创建一个空白位图。创建一个图形对象以使用该空白位图进行书写。清除位图并将其颜色更改为白色。然后绘制图像,然后保存位图。

            Bitmap blank = new Bitmap(DrawArea.Width, DrawArea.Height);
            Graphics g = Graphics.FromImage(blank);
            g.Clear(Color.White);
            g.DrawImage(DrawArea, 0, 0, DrawArea.Width, DrawArea.Height);

            Bitmap tempImage = new Bitmap(blank);
            blank.Dispose();
            DrawArea.Dispose();

            if (extension == ".jpeg")
                tempImage.Save(fileName, System.Drawing.Imaging.ImageFormat.Jpeg);
            else
                tempImage.Save(fileName, System.Drawing.Imaging.ImageFormat.Bmp);

            DrawArea = new Bitmap(tempImage);
            pictureBox1.Image = DrawArea;

            tempImage.Dispose();
收藏
评论

尝试将图像保存为PNG格式而不是JPEG。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号