level 1
举杯邀月影
楼主
1、教程里说到图片的宽x高x色深就是图片占用显存的大小(ps:我的理解这色深应该是24位就算24吧,不然计算出来数字太大了),并且给出了代码,比如:
Dim p As New Bitmap("E:1.bmp")
Dim s As String = CInt(p.PixelFormat)
但实际给出的数字很奇怪,我用24位的图片显示137224(我用msgbox(s)看的),这数字再乘10000那得1G多了,而同一张图片另存为16位色的位图后则显示197634,数字反而更大了。而原文中则是用了“vBitmap.Width * vBitmap.Height * Convert(vBitmap.PixelFormat)”这样的公式计算图片大小,我觉得显然是错的。
不知道我的想法对不对,我觉得也许应该用select case,case 137224那s = 24,case 197634那s = 16,以此类推。
2、取得剩余显存空间原文写的是“Dim vVideoFree As Integer = vDevice.HardwareCaps.VideoMemoryFree”,实际执行时却显示error BC30451: 未声明名称“vDevice”,不知道这行代码应该怎么写?
2012年07月28日 21点07分
1
Dim p As New Bitmap("E:1.bmp")
Dim s As String = CInt(p.PixelFormat)
但实际给出的数字很奇怪,我用24位的图片显示137224(我用msgbox(s)看的),这数字再乘10000那得1G多了,而同一张图片另存为16位色的位图后则显示197634,数字反而更大了。而原文中则是用了“vBitmap.Width * vBitmap.Height * Convert(vBitmap.PixelFormat)”这样的公式计算图片大小,我觉得显然是错的。
不知道我的想法对不对,我觉得也许应该用select case,case 137224那s = 24,case 197634那s = 16,以此类推。
2、取得剩余显存空间原文写的是“Dim vVideoFree As Integer = vDevice.HardwareCaps.VideoMemoryFree”,实际执行时却显示error BC30451: 未声明名称“vDevice”,不知道这行代码应该怎么写?