0

我使用以下代码输出我的计算结果,它应该是 PNG 图片。我不明白为什么在 Debug 运行最后一行给了我一个System.Runtime.InteropServices.ExternalException. 在发布运行时一切正常。

我在网上发现,当图像被其他部分代码使用时,可能会发生此错误,但在我的情况下,它不是真的。

//using System;
//using System.Drawing;
//using System.Drawing.Imaging;

Bitmap png = new Bitmap(this.xPixels, this.yPixels, PixelFormat.Format32bppArgb);
Graphics g = Graphics.FromImage(png);
g.Clear(Color.White);
g.DrawString(currentTime, myFont, mySolidBrush, timeX, timeY, myXTitleFormat);

// write image to file
string path4 = string.Concat(Environment.CurrentDirectory, @"\Output\T1\" + this.fileName + ".png");
png.Save(path4, ImageFormat.Png);
4

1 回答 1

0

在线帮助说“图像以错误的图像格式保存” 。

您对Graphics对象进行操作也很奇怪,但使用Bitmap. 进行的操作是否g影响Bitmap

以下代码在调试或发布模式下都会引发异常:

       {

            Bitmap png = new Bitmap(100, 100, System.Drawing.Imaging.PixelFormat.Format32bppArgb);
            Graphics g = Graphics.FromImage(png);
            g.Clear(Color.White);
            g.DrawString("dummy", SystemFonts.DefaultFont, Brushes.Beige, RectangleF.FromLTRB(5,5,80,80), StringFormat.GenericDefault);

            // write image to file
            string path4 = @"C:\test.png";

            png.Save(path4, System.Drawing.Imaging.ImageFormat.Png);

        }
于 2014-08-06T08:07:15.567 回答