WP8 の WebBrowser コントロール要素に表示されている現在のコンテンツのスクリーンショットを取得する方法はありますか? ドキュメントによると、WebBrowser コントロール要素は電話の Internet Explorer で使用されるものと同じであり、IE には「タブ」ビューがあり、最後にアクセスしたページとそれらのページのコンテンツを含む小さな画像を表示できます。
質問する
299 次
2 に答える
0
この問題の解決策が見つかりません (webBrowser のスクリーンショット)。
しかし、サンプルの履歴ページでユーザーが呼び出したページを表示するための一時的な解決策があります...
Web ページを呼び出したら、ページの SourceCode を保存します。そして、履歴に、ロックされた WebBrowser 要素にソース コードを追加します...
ユーザーはこの履歴 Web ページを表示できます...
しかし、この方法には2つの問題があります(それは単に「一時的な方法」であるためです):
まず、Web ブラウザーでソース コードを表示する場合、このリロード、画像を含む要素 (およびデータ接続を使用)、データ接続は使用されませんでした...
2 つ目は、Web ページのソース コードを時間 Xで保存すると、Web ページの video/images/css/js のパスも保存されます。
そして、おそらく時間 Yで、webPage のコンテンツが変更され、画像を再読み込みできなくなりました... ソースコードが時代遅れになりました...
于 2013-06-07T08:19:41.377 に答える
0
これを試して
UIElement scrollContent = (UIElement)this.LayoutRoot;
bmpCurrentScreenImage.Render(LayoutRoot, new MatrixTransform());
bmpCurrentScreenImage.Invalidate();
SaveToMediaLibrary(bmpCurrentScreenImage, fileName, 100);
public void SaveToMediaLibrary(WriteableBitmap bitmap, string name, int quality)
{
using (var stream = new MemoryStream())
{
// Save the picture to the Windows Phone media library.
bitmap.SaveJpeg(stream, bitmap.PixelWidth, bitmap.PixelHeight, 0, quality);
stream.Seek(0, SeekOrigin.Begin);
IsolatedStorageFileStream fileStream = _storageFile.CreateFile("folderName" + fileName);
BitmapImage bitmap = new BitmapImage();
bitmap.SetSource(imageStream);
WriteableBitmap wb = new WriteableBitmap(bitmap);
wb.SaveJpeg(fileStream, wb.PixelWidth, wb.PixelHeight, orientation, quality);
fileStream.Close();
// new MediaLibrary().SavePicture(name, stream);
}
}
これにより、ブラウザのコンテンツが分離ストレージの画像ファイルに保存されます
于 2014-06-04T08:00:38.427 に答える