我试图从Windows Phone 7中的URL保存图像后,我一直在墙上试试。我已经尝试了http://imagetools.codeplex.com/和WritableBimap,但我总是遇到无法加载的问题(高度为零)因为图像没有加载,或者其他跨线程异常(假设我使用后台线程)。是否有一个简单的库让我保存并调整来自URL的图像?
答案 0 :(得分:0)
您目前是否正在使用 WebClient 或 WebRequest ?
MediaLibrary.SavePicture 也可能有效
http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.media.medialibrary.aspx
http://msdn.microsoft.com/en-us/library/microsoft.xna.framework.media.medialibrary.savepicture.aspx
这些也是官方 Microsoft库,因此它们可能比外部库更好。
要调整大小,您可能有兴趣查看强烈推荐的http://www.leadtools.com/sdk/silverlight/windows-phone.htm
您可能也对Microsoft博客中的这篇文章感兴趣:http://blogs.msdn.com/b/mikeormond/archive/2010/12/09/resizing-images-in-windows-phone-7.aspx
答案 1 :(得分:0)
要下载和存储图像,您需要执行以下操作:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://i.imgur.com/IgomXCN.jpg");
request.BeginGetResponse(new AsyncCallback((result) =>
{
HttpWebResponse response = (HttpWebResponse)request.EndGetResponse(result);
byte[] content = ReadFully(response.GetResponseStream());
MediaLibrary lib = new MediaLibrary();
lib.SavePictureToCameraRoll("Test Picture", content);
}), null);
ReadFully 是Jon Skeet here记录的函数,用于将流转换为字节数组。 MediaLibrary是 Microsoft.Xna.Framework 程序集的一部分,正如其他一个答案中所述。
答案 2 :(得分:-1)