如何在wp7中保存透明背景的位图图像

时间:2012-06-12 05:48:47

标签: c# windows-phone-7.1

大家好,我是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();

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

1 个答案:

答案 0 :(得分: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/