日期:2014-05-17  浏览次数:20908 次

C# webBrowser截图问题(解决追分至200)
我使用webBrowser加载一个写好的html,设置html中center的尺寸为794 * 1123

private void GetWebBrowserScreen(WebBrowser wb, int width, int height) {
foreach (HtmlElement f in wb.Document.GetElementsByTagName("center")) {
//将元素绝对定位到页面左上角
f.Style = "position: absolute; z-index: 9999; top: 0px; left: 0px";
//抓图
_image = new Bitmap(f.ClientRectangle.Width, f.ClientRectangle.Height);
wb.DrawToBitmap(_image, new Rectangle(new Point(), f.ClientRectangle.Size));
break;
}
}

得到的图片尺寸是794 * 1123,但原来794 * 1123可以显示下的内容,在图片中显示不下了,求解……

------解决方案--------------------
是不是位置偏移了,你绘制时设置起始点位置试试
 wb.DrawToBitmap(_image, new Rectangle(new Point(0,0), f.ClientRectangle.Size));
------解决方案--------------------
差多少?
要不你把宽度和高度加大点
 wb.DrawToBitmap(_image, new Rectangle(0,0,f.ClientRectangle.Size.Width+10,f.ClientRectangle.Size.Height+10)); 
------解决方案--------------------
你这个大小忽略了浏览器的边框了吧。。。
------解决方案--------------------
那你把浏览器设大点。。。你设成一样大。有问题吧。。