繁体   English   中英

捕获WebBrowser图像

[英]Capture WebBrowser Image

使用saveFileDialog保存后,此代码返回白色图像

private void salvaUnImmagineToolStripMenuItem_Click(object sender, EventArgs e)
            {                    
                if (saveFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    SaveAsBitmap(webBrowser1, saveFileDialog1.FileName);
                }                
            }

            public void SaveAsBitmap(Control control, string fileName)
            {
                //getthe instance of the graphics from the control
                Graphics g = control.CreateGraphics();

                //new bitmap object to save the image
                Bitmap bmp = new Bitmap(control.Width, control.Height);

                //Drawing control to the bitmap
                control.DrawToBitmap(bmp, new Rectangle(0, 0, control.Width, control.Height));

                bmp.Save(fileName);
                bmp.Dispose();
            }

我如何捕获网络浏览器的图像?

尝试这个 ...

public partial class Form1 : Form
{
  WebBrowser wb = new WebBrowser();

  public Form1()
  {
    InitializeComponent();

    wb.Height = 100;
    wb.Width = 100;
    wb.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);
  }

  void wb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
  {
    Bitmap bmp = new Bitmap(100, 100);
    wb.DrawToBitmap(bmp, new Rectangle(wb.Location.X, wb.Location.Y, wb.Width, wb.Height));

    this.pictureBox1.BackgroundImage = bmp;
  }

}

希望有所帮助。

HTML敏捷包

这是解析HTML的非常好的库:

HtmlAgilityPack.HtmlWeb web = new HtmlAgilityPack.HtmlWeb();
HtmlAgilityPack.HtmlDocument doc = web.Load("Yor Path(local,web)"); 
var result=doc.DocumentNode.Descendants("img");//return HtmlCollectionNode

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM