2011-10-10 111 views
2

有谁知道我如何获得GeckoFX的整个页面高度和宽度? 在IE WebBrowser对象中,我可以看一下WebBrowser.Document.Body.ScrollRectangle。 (这里的目的是截取整个页面的截图)GeckoFX WebBrowser页面的高度和宽度

谢谢!

回答

1

我使用GeckoFX的Hindle's fork,这里就是我如何做到这一点:

var width = _browser.Document.ActiveElement.ScrollWidth; 
var height = _browser.Document.ActiveElement.ScrollHeight; 

我使用它来创建页面的缩略图。请注意,这给我们的尺寸占用了我们导航到的第一个页面,不一定是当前页面的尺寸。我通过为缩略图的每个页面使用不同的浏览器实例来解决这个问题。

+0

John,我需要在页面上创建一个SVG文档的缩略图。你能详细说明你使用的方法吗? –

+0

@YuriyGettya,归结于var docImage = browser.GetBitmap((uint)browser.Width,(uint)browser.Height);您可以在我的完整HTMLThumbnailer代码中查看一些边缘情况:https://github.com/BloomBooks/BloomDesktop/blob/master/src/BloomExe/HtmlThumbNailer.cs。请注意,由于我写了它,geckofx已经获得了更多与图像相关的代码,所以我现在可以看到如果现在不能更简单地使用它,可以使用它。见https://bitbucket.org/geckofx/geckofx-18.0/src/7c0672b60987b99ab4a0c4cdd374c0cdce438086/Geckofx-Core/ImageCreator.cs –

+0

DrawToBitmap()做我需要的,谢谢。 –