2012-06-12 61 views
4

大家好我是wp7的新手。如何在wp7中保存透明背景的位图图像

我的问题是我保存位图图像,但图像的背景不透明。看我的代码如下:

IsolatedStorageFileStream fileStream = myIsolatedStorage.CreateFile(fileName); 

var bitmap = new WriteableBitmap(500, 700); 
bitmap.Render(paint, null); 
bitmap.Invalidate(); 

WriteableBitmap wb = new WriteableBitmap(bitmap); 

wb.SaveJpeg(fileStream, wb.PixelWidth, wb.PixelHeight, 0, 85); 
fileStream.Close(); 

如何保存透明背景的位图图像?

回答

3

JPEG文件不允许透明。 GIF和PNG格式。

所以你可能做的是将文件保存为PNG或GIF格式。看看ImageTools library on Codeplex。使用这个库很容易将您的位图数据保存为保持透明度信息的格式。

该帖子有点旧,但是Jaime Rodriguez用这个图书馆写了一个例子:http://blogs.msdn.com/b/jaimer/archive/2010/11/23/working-with-gif-images-in-windows-phone.aspx。我会在这里发布有趣的代码,但不幸的是Skydrive被我的代理拦截了:-)

您可能有兴趣查看上面提到的三种格式在日期但仍然有效的文章中的差异SitePoint:http://www.sitepoint.com/gif-png-jpg-which-one-to-use/