蓬莱东路走九遭 2014年01月13日
GDI+加载索引像素格式的大图片异常,大侠进
近期的一个B/S项目中有用到GDI+图片处理,当GDI+加载索引像素的图片时,需要先将Image对象转换为Bitmap对象供GDI+调用,在加载尺寸为1024*31500以内的大图片时,均正常,但当图片尺寸在1024*33000以上时,GDI+代码“g.DrawImage(bmp, 0, 0)”异常提示“参数无效”,今天单独写Winform进行测试,也是同样的情况,求大神指导(具体需求是:在这张大图上画一个矩形,并生成一个以矩形位置为基点1024*1024的小图片,相关代码都已完成,前天出现上述问题)

GDI+代码:
private void Form1_Load(object sender, EventArgs e)
{
//原图为索引像素格式,在使用Graphics时需要先用bmp转换
Image img = Image.FromFile(@"D:\测试数据文件夹\20130405\092229\1_1正常.jpg");
MessageBox.Show(img.Width + "," + img.Height);
Bitmap bmp = new Bitmap(img.Width, img.Height, PixelFormat.Format24bppRgb);
Graphics g = Graphics.FromImage(bmp);

//g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
//g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality;

//1024*31504正常 1024*34400异常
g.DrawImage(bmp, 0, 0);

g.Dispose();
bmp.Dispose();
img.Dispose();
}


测试图片下载地址(一张正常的,一张异常的):http://pan.baidu.com/s/1sjq9UVz
http://pan.baidu.com/s/1gd0xHdT
...全文
188 点赞 收藏 6
写回复
6 条回复

还没有回复,快来抢沙发~

发动态
发帖子
C#
创建于2007-09-28

8.4w+

社区成员

64.0w+

社区内容

.NET技术 C#
社区公告
暂无公告