首頁 >後端開發 >C++ >在 .NET 中建立大型位圖時如何克服「參數無效」錯誤?

在 .NET 中建立大型位圖時如何克服「參數無效」錯誤?

Barbara Streisand
Barbara Streisand原創
2024-12-30 17:41:17684瀏覽

How to Overcome the

建立大於19,000 像素的位圖:解決「參數無效」錯誤

嘗試建立尺寸超過19,000 的位圖時使用System. Drawing.Bitmap建構函數時,您可能會遇到以下錯誤:「參數是無效。」此錯誤源自於如此大的位圖所需的過多記憶體分配。

解決方法:

不幸的是,沒有簡單的解決方法可以使用以下命令創建大於 19,000 像素的位圖System.Drawing.Bitmap 類別。此限制的根源在於這些廣泛位圖所需的連續記憶體量。

如引用的MSDN 論壇主題(http://social.msdn.microsoft.com/Forums/en-US/netfxbcl) 所述/thread/37684999-62c7-4c41-8167-745a2b486583/) ,.NET 限制了創建消耗過多記憶體的圖像。

作為參考,影像的記憶體消耗公式如下:

bit-depth * width * height / 8

對於尺寸為 40800 像素 x 4050 像素的影像,此相當於超過 660 MB 的記憶體。

以上是在 .NET 中建立大型位圖時如何克服「參數無效」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn