zoukankan      html  css  js  c++  java
  • c# webBrowser 转图片

    class NativeMethods
    {
    [ComImport]
    [Guid("0000010D-0000-0000-C000-000000000046")]
    [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
    interface IViewObject
    {
    void Draw([MarshalAs(UnmanagedType.U4)] uint dwAspect, int lindex, IntPtr pvAspect, [In] IntPtr ptd, IntPtr hdcTargetDev, IntPtr hdcDraw, [MarshalAs(UnmanagedType.Struct)] ref RECT lprcBounds, [In] IntPtr lprcWBounds, IntPtr pfnContinue, [MarshalAs(UnmanagedType.U4)] uint dwContinue);
    }

    [StructLayout(LayoutKind.Sequential, Pack = 4)]
    struct RECT
    {
    public int Left;
    public int Top;
    public int Right;
    public int Bottom;
    }

    public static void GetImage(object obj, Image destination, Color backgroundColor)
    {
    using (Graphics graphics = Graphics.FromImage(destination))
    {
    IntPtr deviceContextHandle = IntPtr.Zero;
    RECT rectangle = new RECT();

    rectangle.Right = destination.Width;
    rectangle.Bottom = destination.Height;

    graphics.Clear(backgroundColor);

    try
    {
    deviceContextHandle = graphics.GetHdc();

    IViewObject viewObject = obj as IViewObject;
    viewObject.Draw(1, -1, IntPtr.Zero, IntPtr.Zero, IntPtr.Zero, deviceContextHandle, ref rectangle, IntPtr.Zero, IntPtr.Zero, 0);
    }
    finally
    {
    if (deviceContextHandle != IntPtr.Zero)
    {
    graphics.ReleaseHdc(deviceContextHandle);
    }
    }
    }
    }
    }

    private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {

    Bitmap screenshot = new Bitmap(webBrowser1.Width, webBrowser1.Height);
    NativeMethods.GetImage(webBrowser1.ActiveXInstance, screenshot, Color.White);

    // 保存图片
    screenshot.Save(@"F:h11.png");
    }

  • 相关阅读:
    .NetCore 导出Execl
    10块钱可以喝几瓶?
    menuStrip鼠标滑过自动弹出
    静态变量
    DataTable.SELECT日期类型筛选处理
    Java中accept()阻塞是如何实现的
    L1正则在0处不可导怎么办?
    L1和L2正则化原理推导.md
    5局3胜和3局2胜哪个更容易赢.md
    Java集合(一): 集合框架Collection和Map
  • 原文地址:https://www.cnblogs.com/qiaoke/p/7859958.html
Copyright © 2011-2022 走看看