在图片框中加载tif文件时内存不足异常

时间:2014-08-18 05:32:01

标签: c# graphics

我需要在图片框中加载tiff文件,并使用以下代码执行此操作:

picBox.Image = Image.FromFile(files[current].FullName);

此代码在我的计算机上运行良好,但是当我将其部署在另一台PC上时,它会抛出OutOfMemoryException

tiff文件由传真服务生成。

我想知道如何以异常安全的方式加载此文件。

2 个答案:

答案 0 :(得分:1)

我通过使用以下代码更改加载图像的Pixel格式来解决此问题:

  Bitmap orig = new Bitmap(filePath);
            Bitmap clone = new Bitmap(orig.Width, orig.Height, System.Drawing.Imaging.PixelFormat.Format32bppPArgb);
            using (Graphics gr = Graphics.FromImage(clone))
            {
                gr.DrawImage(orig, new Rectangle(0, 0, clone.Width, clone.Height));
                picShow.Image = clone;
            }

我希望这有助于其他人

答案 1 :(得分:0)

我有同样的问题而且很难解决。你节省了大约3天的时间。

但是我测试了你的代码,我发现你的图像最后失去了透明度。

我需要一些png图片并编辑您​​的代码,我的问题就解决了。

感谢名单