如何共享提取的图像?

时间:2012-11-30 23:01:27

标签: windows-8 windows-runtime winjs

我使用responseType为“blob”进行WinJS.xhr()调用,result.response是一个图像。我如何分享该图像? DataTransferManager的setBitmap需要流引用。我是否需要将图像记录到临时文件中然后执行Windows.Storage.Streams.RandomAccessStreamReference.createFromFile()?如果是这样,我如何将图像写入StorageFile?感谢。

2 个答案:

答案 0 :(得分:1)

您有两种选择:

  1. 将文件写入磁盘。有关详细信息,请参阅this question
  2. 从XHR响应中创建多用途blob。见MSDN for details
  3. 第二个选项会阻止您暂时将文件写入磁盘,但是稍后会通过一些内存管理来撤消blob。创建网址后,您只需将其分配到img代码src属性即可。

答案 1 :(得分:0)

这个老问题的替代答案,如果目标是共享图像而不保存图像,

Windows.Storage.Streams.RandomAccessStreamReference.createFromUri(targetImageSrc);

要达到相同的结果,请从uri而不是file创建流。

尽管此功能可能在那时还不可用。