原来用的webBrowser.DrawTobitmap方法在某些情况下不能正确截图,Reflector查看webBrowser.drawtobitmap方法的实现可见在public class WebBrowserBase : Control类中实现的,这个实现隐藏了父类的方法,直接调用父类Control的DrawToBitmap方法。
new public void DrawToBitmap(Bitmap bitmap, Rectangle targetBounds)
{
base.DrawToBitmap(bitmap, targetBounds);
}
提供的解决方法后,能都截取大部分网页。
如Google网页的截图:
源码下载:
Xianfen.Net.CaptureWeb_src.zip
可执行程序下载:
Xianfen.Net.CaptureWeb_bin.zip
- 海报