0

我的代码:

Dim bmp_ As New Bitmap(width, height)


' here is for-loop to fill up bitmap   ( bmp_.SetPixel(x, y, Color.White) )


bmp_.Save("D:\test.bmp", ImageFormat.Bmp)

这适用于小文件,但如果我尝试这个:

Dim bmp_ As New Bitmap(30000, 30000)

..然后,我在那条线上得到了 ArgumentException。

问题:有什么办法,如何创建这么大的bmp文件?

谢谢

编辑:如果位图是 1000000 x 1000000 怎么办?是否可以在硬盘上创建 BMP 文件并按顺序附加数据?

4

1 回答 1

1

如果您使用的是 VS 2010,您可以尝试通过将这些行添加到 Visual Studio 中的“构建后事件”部分来增加 VB 可用的内存量:

call "$(DevEnvDir)..\..\vc\vcvarsall.bat" x86
"$(DevEnvDir)..\..\vc\bin\EditBin.exe" "$(TargetPath)"  /LARGEADDRESSAWARE

这里更详细地解释了这个过程:

http://blogs.msdn.com/b/calvin_hsia/archive/2010/09/27/10068359.aspx

于 2012-10-18T14:10:45.347 回答