Windows phone 8 如何制作一个;截图;网络浏览者的内容
在WP8的WebBrowser控件元素中是否有当前内容的屏幕截图?Windows phone 8 如何制作一个;截图;网络浏览者的内容,windows-phone-8,webbrowser-control,windows-phone,Windows Phone 8,Webbrowser Control,Windows Phone,在WP8的WebBrowser控件元素中是否有当前内容的屏幕截图? 文档中说,WebBrowser控件元素与手机上Internet Explorer使用的控件相同,IE具有“选项卡”视图,您可以在其中查看最近访问的页面和包含这些页面内容的小图片。我还没有找到此问题的解决方案(WebBrowser的屏幕截图) 但是,您有一个临时解决方案,可以在示例的历史页面中显示用户调用的页面 调用网页时,请保存该网页的源代码。并且,在您的历史记录中,将源代码添加到WebBrowser元素中 用户可以查看此历史记
文档中说,WebBrowser控件元素与手机上Internet Explorer使用的控件相同,IE具有“选项卡”视图,您可以在其中查看最近访问的页面和包含这些页面内容的小图片。我还没有找到此问题的解决方案(WebBrowser的屏幕截图) 但是,您有一个临时解决方案,可以在示例的历史页面中显示用户调用的页面 调用网页时,请保存该网页的源代码。并且,在您的历史记录中,将源代码添加到WebBrowser元素中 用户可以查看此历史记录网页 但是,这种方法有两个问题(因为这只是“临时方法”): 首先是指当您在webbrowser中显示源代码时,此重新加载、元素(和使用数据连接)与图像,没有使用数据连接 Second是指如果您在时间X中保存网页的源代码,那么您还可以保存网页的视频/图像/css/js上的路径 而且,可能在时间Y内,网页内容已被修改,图像无法重新加载。。。源代码过时了…试试这个
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);
}
}
这将把浏览器内容保存到独立存储的图像文件中是否可能重复?是的,基本上是个傻瓜。在WP8或7.5中,无法将WebBrowser控件的内容呈现为可写的Bitmap(或其他构造)。我现在遇到了另一个想法。难道不能将一个WebBrowser元素的内容传输到另一个吗?另一个解决方案是在mini-WebBrowser元素的Recents视图中加载站点,但这不是一个好的解决方案,因为您会一次又一次地下载站点。