C# 新建bitmap的时候出现parameter error报错! 10
我的程序是将中文编译中bitmap的格式,然后传送给打印机打印。程序是发布到IIS下的,程序功能上没有问题,只是当程序运行了一个月左右的时间,就会出现“parameter...
我的程序是将中文编译中bitmap的格式,然后传送给打印机打印。
程序是发布到IIS下的,程序功能上没有问题,只是当程序运行了一个月左右的时间,就会出现“parameter error”的报错,无法new bitmap。重启IIS可以解决这个问题。不知道是不是跟内存、垃圾回收有关系,想请大神们帮个忙,给一次性药到病除。
我的bitmap的主要代码如下:
private Bitmap CreateImage(string data, Font f)
{
if (string.IsNullOrEmpty(data))
return null;
Bitmap temp = new Bitmap(4600, 4600);
Graphics graphics = Graphics.FromImage(temp);
SizeF sizeF = graphics.MeasureString(data, f);
var image = new Bitmap((int)sizeF.Width, (int)sizeF.Height);
graphics.Dispose();
temp.Dispose();
var g = Graphics.FromImage(image);
var b = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Black, Color.Black, 1.2f, true);
g.Clear(System.Drawing.Color.White);
g.DrawString(data, f, b, 1, 1);
g.Dispose();
return image;
}
我在调用这个方法的最外层的方法里面执行了GC的dispose方法
finally
{
GC.Collect();
GC.WaitForPendingFinalizers();
}
结果还是一样。
请大神帮帮忙啊!
记录的报错日志,供参考! 展开
程序是发布到IIS下的,程序功能上没有问题,只是当程序运行了一个月左右的时间,就会出现“parameter error”的报错,无法new bitmap。重启IIS可以解决这个问题。不知道是不是跟内存、垃圾回收有关系,想请大神们帮个忙,给一次性药到病除。
我的bitmap的主要代码如下:
private Bitmap CreateImage(string data, Font f)
{
if (string.IsNullOrEmpty(data))
return null;
Bitmap temp = new Bitmap(4600, 4600);
Graphics graphics = Graphics.FromImage(temp);
SizeF sizeF = graphics.MeasureString(data, f);
var image = new Bitmap((int)sizeF.Width, (int)sizeF.Height);
graphics.Dispose();
temp.Dispose();
var g = Graphics.FromImage(image);
var b = new System.Drawing.Drawing2D.LinearGradientBrush(new Rectangle(0, 0, image.Width, image.Height), Color.Black, Color.Black, 1.2f, true);
g.Clear(System.Drawing.Color.White);
g.DrawString(data, f, b, 1, 1);
g.Dispose();
return image;
}
我在调用这个方法的最外层的方法里面执行了GC的dispose方法
finally
{
GC.Collect();
GC.WaitForPendingFinalizers();
}
结果还是一样。
请大神帮帮忙啊!
记录的报错日志,供参考! 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询