Chia sẻ

Nếu bạn muốn chụp ảnh màn hình của một trang web, hãy sử dụng đoạn mã dưới đây.

private void WebsiteScreenshot(string url, string file)
{
    //Tạo đối tượng WebBrowser 
    WebBrowser browser = new WebBrowser();
 
    //Ẩn thanh cuộn trên WebBrowser nếu không muốn hiển thị trong ảnh
    browser.ScrollBarsEnabled = false;
 
    //Tắt cửa sổ popup báo lỗi javascript
    browser.ScriptErrorsSuppressed = true;
 
    //Mở trang web
    browser.Navigate(new Uri(url));
 
    //Đợi cho tới khi đã tải xong trang
    while (browser.Document == null || browser.Document.Body == null)
    Application.DoEvents();
 
    //Chỉnh lại kích thược của webbrowser bằng với kích thước của webpage
    Rectangle websiteSize = browser.Document.Body.ScrollRectangle;
    browser.Size = new Size(websiteSize.Width,websiteSize.Height);
 
    //Tạo ra đối tượng Bitmap có cùng kích thước với website
    Bitmap bmp = new Bitmap(websiteSize.Width, websiteSize.Height);
 
    //Vẽ nội dung của website vào đối tượng bitmap
    browser.DrawToBitmap(bmp,
    new Rectangle(0, 0, websiteSize.Width, websiteSize.Height));
 
    browser.Dispose();
 
    //Lưu hình ảnh bitmap vào tệp
    bmp.Save(file, ImageFormat.Png);
}

Chúng ta sử dụng hàm trên như sau:

WebsiteScreenshot("https://csharpcanban.com/", "c:website_screenshot.png");

Nếu các bạn muốn thay đổi định dạng của tệp hình ảnh, thì hãy thay đổi thuộc tính ImageFormat-type trong hàm trên nhé. Chúc các bạn thành công !!!

 

ĐĂNG KÝ MUA HÀNG

    Email (*)

    Điện thoại (*)

    Tên sản phẩm/Dịch vụ:


    Chia sẻ
    Xem thêm  [C#] Hướng dẫn lấy đoạn mã Base64 từ Image

    Trả lời

    Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *