PhotoCameraで画面に表示した画像を保存したい

Category: windows phone apps_ja

Question

こち on Thu, 10 Jan 2013 06:00:28


PhotoCameraで画面にカメラ映像の一部を表示し、それをそのままスクリーンショットを撮るように保存したいのですが、保存した画像を見ると真っ黒な画像が保存されています。

http://blogs.msdn.com/b/shintak/archive/2012/05/02/10299578.aspx

をそのまま入力した後、

WriteableBitmap bitmap = new WriteableBitmap(this.lense, null);
            MemoryStream stream = new MemoryStream();

            bitmap.SaveJpeg(stream, bitmap.PixelWidth, bitmap.PixelHeight, 0, 80);

            using (MediaLibrary medialib = new MediaLibrary())
                medialib.SavePicture(DateTime.Now.ToString("yyMMddHHmmss"), stream.ToArray());
           
            MessageBox.Show("Saved");

としました。lenseというのは四角の画面領域(Rectangle)の名前です。

一度写真を撮って保存したものを表示しないと、スクリーンショットのように見えているままの画像を保存することはできないのでしょうか。

Replies

Azulean on Thu, 10 Jan 2013 14:07:46


推測に過ぎないのですが、動画として表示されているものなのでその領域を保存とコードを書いても保存されないのでしょう。
支障がないなら、CaptureImage メソッドを使ってください。

// 他の方法は”撮影音”の話が絡むので積極的に触れるべきではないと判断して割愛。

こち on Sat, 12 Jan 2013 06:55:31


回答ありがとうございます。

画面キャプチャの方法は分かりませんでしたが、機能は実現できました。
ありがとうございました。