在使用真棒ImageResizing组件时,我尝试上传和读取大小约为100MB的图像时遇到“内存不足”错误。它可能看起来很大,但我们是很多人需要提供这种尺寸图像的打印机。ImageResizer在大图像上崩溃
的失败代码的行是:
ImageResizer.ImageBuilder.Current.Build(使用Server.Mappath(strImagePath),使用Server.Mappath(strThumbPath),新ResizeSettings( “maxheight =” + “150” + “& maxwidth =”+“238”));
这可能是GDI本身失败,但除检测错误发生并让用户知道之外,是否有任何解决方法?
预先感谢 铝
图像的文件大小(jpg/png/etc ..)与其分辨率无关和颜色深度是。在32bit下的1000x1000图像将需要大约4兆像素的RAM,仅用于未压缩的原始像素数据。你说你是打印机,所以你最有可能处理更大的图像。 –
感谢您的回复。你怎么能根据尺寸计算出需要的内存?当然大约。我一直在测试的图像是19000 X 13000,真是太棒了! – higgsy
对于32位图像,19000 * 13000 *(bit_depth/8)= 942兆字节。 –