C#完成網頁截圖功效。本站提示廣大學習愛好者:(C#完成網頁截圖功效)文章只能為提供參考,不一定能成為您想要的結果。以下是C#完成網頁截圖功效正文
網頁截圖是很罕見的適用功效,明天就為年夜家同享一個完成閱讀器截圖的代碼,重要法式代碼以下所示:
private void Form_Load(object sender, EventArgs e) { //吸收web url string colle = string.Empty; string url = string.Empty; //獲得過程挪用傳入的敕令 string[] args = Environment.GetCommandLineArgs(); string[] args = new string[] { @"E:\MicroSpace\MicroSpace\localpage\Debug\GetCutImage.exe", "-u:http://sliefj.com/template/amo.html","-n:E:\\TEST\\test.jpg" }; for (int i = 1; i < args.Length; i++) { switch (args[i].Substring(0, 3)) { case "-u:": url = args[i].Substring(3); break; case "-n:": imagename = args[i].Substring(3); break; default: colle = args[i]; break; } } WebBrowser webBrowser = new WebBrowser(); // 創立一個WebBrowser webBrowser.ScrollBarsEnabled = false; // 隱蔽轉動條 webBrowser.Navigate(url); // 翻開網頁 webBrowser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(webBrowser_DocumentCompleted); // 增長網頁加載完成事宜處置函數 } private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) { WebBrowser webBrowser = (WebBrowser)sender; // 網頁加載終了才保留 if (webBrowser.ReadyState == WebBrowserReadyState.Complete) { bool save_suc = true; try { // 獲得網頁高度和寬度,也能夠本身設置 int height = webBrowser.Document.Body.ScrollRectangle.Height; int width = webBrowser.Document.Body.ScrollRectangle.Width; //截圖寬度、高度 int imgwidth = width - 2 * 60; int imgheight = height - 48; // 調理webBrowser的高度和寬度 webBrowser.Height = height; webBrowser.Width = width; Bitmap bitmap = new Bitmap(width, height); // 創立高度和寬度與網頁雷同的圖片 Rectangle rectangle = new Rectangle(0, 0, width, height); // 畫圖區域 //Rectangle mm=new Rectangle( webBrowser.DrawToBitmap(bitmap, rectangle); // 繪制閱讀器圖片至bitmap int bmpw = bitmap.Width; int bmph = bitmap.Height; System.Drawing.Image Imag = new System.Drawing.Bitmap(imgwidth, imgheight);//創立Image System.Drawing.Graphics gp = System.Drawing.Graphics.FromImage(Imag);//獲得Image的Graphics //經由過程Graphics畫圖完成截圖後果 gp.DrawImage(bitmap,new Rectangle(0,0,imgwidth,imgheight),new Rectangle(60,48,imgwidth,imgheight),GraphicsUnit.Pixel); //保留 Imag.Save(imagename, System.Drawing.Imaging.ImageFormat.Jpeg); //bitmap.Save(imagename, System.Drawing.Imaging.ImageFormat.Jpeg); bitmap.Dispose(); gp.Dispose(); Imag.Dispose(); } catch (Exception ex) { } finally { this.Dispose(true); System.Diagnostics.Process.GetCurrentProcess().Kill(); this.Close(); Application.Exit(); } } } //圖片保留方法 //imagename 圖片途徑 bitmap.Save(imagename, System.Drawing.Imaging.ImageFormat.Jpeg); Image.Save(imagename, System.Drawing.Imaging.ImageFormat.Jpeg);
感興致的讀者還可以依據本身項目需求進一步加以改良,使之功效加倍完美。