windows Phone 7 保存图片到MediaLibrary

windows phone for silverlight 项目中不能直接把图片,视频,音频等文件放到MediaLibray 中,不过XNA的库里可以实现这个功能。

 

1.首先要引用XNA的库 :
using Microsoft.Xna.Framework.Media;

 

2.定义一个MediaLibrary对象,指定图片文件.

MediaLibrary library = new MediaLibrary();

string lName ="/Images/image1.jpg";


3. 声明一个存储文件流,检查文件是否存在. 
   var myStore = IsolatedStorageFile.GetUserStoreForApplication();


   if (myStore.FileExists(lName))
   {
          MessageBox.Show("图片已经存在");
   }
   else
   {

4.将图片文件存储在独立存储,将其转码最后存储在媒体库(MediaLibrary)里.

         IsolatedStorageFileStream myFileStream = myStore.CreateFile(lName);
         BitmapImage image = new BitmapImage();
         image.SetSource(e.Result);
         WriteableBitmap CaptureImage = new WriteableBitmap(image);

 

        // 将WriteableBitmap转换为JPEG流编码,并储存到独立存储里.
        Extensions.SaveJpeg(CaptureImage, myFileStream, CaptureImage.PixelWidth, CaptureImage.PixelHeight, 0, 85);
        myFileStream.Close();               // 关闭文件流.

       //从独立存储里读出刚存入的图片文件.
       myFileStream = myStore.OpenFile(lName, FileMode.Open, FileAccess.Read);

       //把图片加在WP7 手机的媒体库.
       Picture pic = library.SavePicture(lName, myFileStream);
       myFileStream.Close();
       MessageBox.Show("保存成功!", "提示", MessageBoxButton.OK);

}


默认的媒体库:    

 

 


 保存后效果图(如Saved Pictures 所示):

 

 

2010-6-1 17:14:32

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值