level 2
如题
tu2.Load( "图1.png")
之后图1 就一直被占用,换过很多写法。。。比如
Dim ima As Image
ima = Image.FromFile("图1.png")
tu2.Image = ima.Clone
ima.Dispose()
还是占用着
有没有大佬帮下本小白
2021年04月06日 07点04分
1
level 11
你试试
ima = Image.FromFile("")
2021年04月06日 08点04分
3
显示路径不合法,然后我写成加载别的png格式的图还是没有用。
2021年04月06日 08点04分
@费尔巴呵呵 net我没用过。vb6就是loadpicture(“”)
2021年04月06日 10点04分
level 14
把原图LockBits后,就可以获取到位图数据,拿到数据后再New一个新的Bitmap就行了:
Dim oBmp As Bitmap, nBmp As Bitmap, rc as Rectangle, bd As BitmapData
oBmp = New Bitmap("你的文件.png")
rc.Width = oBmp.Width
rc.Height = oBmp.Height
bd = oBmp.LockBits(rc, ImageLockMode.ReadOnly, oBmp.PixelFormat)
nBmp = New Bitmap(bd.Width, bd.Height, bd.Stride, bd.PixelFormat, bd.Scan0)
oBmp.UnlockBits(bd)
oBmp.Dispose()
2021年04月10日 02点04分
4
nBmp完全是从内存创建,所以是不会占用文件的,并且保证已经解码成RAW格式了,绘图速度也要远比oBmp快(因为GDI+加载文件后不会立即解码)。
2021年04月10日 02点04分