簡體   English   中英

在圖片框中加載tif文件時出現內存不足異常

[英]Out of memory exception when loading tif file in a picture box

我需要在圖片框中加載tiff文件,並使用以下代碼執行此操作:

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

該代碼在我的計算機上可以很好地工作,但是當我在另一台PC上部署它時,它將拋出OutOfMemoryException

tiff文件是由傳真服務生成的。

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

我通過使用以下代碼更改加載圖像的像素格式來解決此問題:

  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;
            }

我希望這可以幫助其他人

我有同樣的問題,因此很困惑於解決。 您可以節省我大約3天的時間。

但是我測試了您的代碼,發現最后圖像失去了透明度。

我需要一些png圖片並編輯您​​的代碼,問題就解決了。

感謝名單

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM