使用ImageTools c#wp8将可写位图转换为Png

时间:2014-09-24 06:12:39

标签: c# windows-phone-7 windows-phone-8 bitmap

我已经坚持这个问题了几天了。所以我得到了这个WritableBitmap对象,我用它来渲染图像(尚未保存),我可以使用.SaveJpeg将其保存为jpeg文件,但我需要图像在png中以保存transperency。这是我创建WritableBitmap

的代码
var customTile = new PayClock2();
customTile.Measure(new Size(336, 336));
customTile.Arrange(new Rect(0, 0, 336, 336));

var bmp = new WriteableBitmap(336, 365);
bmp.Render(customTile, null);
bmp.Invalidate();

我尝试过使用ImageTools库,但我似乎无法将WritableBitmap转换为Bitmap

            var img = bmp.ToImage();

            var encoder = new PngEncoder();
            using (var stream = new IsolatedStorageFileStream(filename, System.IO.FileMode.Create, isf))
            {
                encoder.Encode(img, stream);
                stream.Close();
            }

这里的任何人都成功地将可写位图保存到Png之前?

提前致谢

1 个答案:

答案 0 :(得分:0)

使用Tool Stack Png库非常容易 - http://toolstack.com/libraries/pngwriter有了它,你可以简单地调用扩展方法.WritePng()并完成。我已经在我需要保存png文件的所有项目中使用它,并且始终没有问题。