我的代码:
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文件并按顺序追加数据?
答案 0 :(得分:1)
如果您使用的是VS 2010,可以尝试通过将这些行添加到visual studio中的“Post Build Events”部分来增加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