我正在使用WebBrowser控件,并且想要将网页上的特定图像复制到剪贴板。我知道我可以使用WebBrowser.Document.ExecCommand方法复制页面的当前选定区域,但是无法弄清楚如何将选择范围覆盖特定的HtmlElement或页面区域。
任何帮助深表感谢!
最佳答案
我没有写这个,但是前一阵子发现它以为会对您有所帮助。
http://www.codeproject.com/Messages/3206780/Re-Image-in-WebBrowser.aspx
IHTMLDocument2 doc = (IHTMLDocument2) webBrowser1.Document.DomDocument;
IHTMLControlRange imgRange = (IHTMLControlRange) ((HTMLBody) doc.body).createControlRange();
foreach (IHTMLImgElement img in doc.images)
{
imgRange.add((IHTMLControlElement) img);
imgRange.execCommand("Copy", false, null);
using (Bitmap bmp = (Bitmap) Clipboard.GetDataObject().GetData(DataFormats.Bitmap))
{
bmp.Save(@"C:\"+img.nameProp);
}
}