0

カメラロールに保存せずに、カメラからキャプチャした画像を分離ストレージに保存する必要があるWindows Phoneアプリケーションに取り組んでいます。キャプチャした画像を分離ストレージに保存できますが、キャプチャした画像のコピーがカメラロールにも保存されます。カメラロールではなく、隔離されたストレージ内に画像を保持する方法はありますか?

ありがとう

4

2 に答える 2

1

分離ストレージのみに保存する場合は、CameraCaptureTask. WP8 では、何をしても透過的に画像のコピーがカメラ ロールに保存されます。

とは言え、解決策はあります。基本的に独自の を作成して使用するには、カメラ API を使用する必要がありますCameraCaptureTask。深く掘り下げるつもりはありませんが、これで始められるはずです。

最初に行う必要があるのは、このチュートリアルに従って、ビューと基本的なアプリケーションを作成することです。メソッドを使用してcam_CaptureImageAvailable、画像をカメラロールに保存します。次のように、分離ストレージに保存するように変更する必要があります。

using (e.ImageStream)
{
   using(IsolatedStorageFile storageFile = IsolatedStorageFile.GetuserStoreForApplication())
   {
      if( !sotrageFile.DirectoryExists(<imageDirectory>)
      {
         storageFile.CreateDirectory(<imageDirectory>);
      }

      using( IsolatedStorageFileStream targetStream = storageFile.OpenFile( <filename+path>, FileMode.Create, FileAccess.Write))
      {
         byte[] readBuffer = new byte[4096];
         int bytesRead;
         while( (bytesRead = e.ImageStream.Read( readBuffer, 0, readBuffer.Length)) > 0)
         {
            targetStream.Write(readBuffer, 0, bytesRead);
         }
      }
   }
}

この時点から、分離ストレージにのみ保存する機能的なカメラ アプリケーションが完成しました。色の効果などでスパイスを効かせたいと思うかもしれませんが、必須ではありません。

于 2013-08-08T11:52:39.570 に答える