C# HTML转图片

2023-11-11


一、WebBrowser

WebBrowser常用来做应用内嵌的WebUI,使用时需要进入System.Windows.Forms程序集。


二、实例

1. HTML文件

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="utf-8">
    <title>示例HTML</title>
</head>
<body>
    <h1>这是HTML的内容!</h1>
</body>
</html>

2. CS代码

using System;
using System.Windows.Forms;
using System.Drawing;

namespace Demo
{
    class Program
    {
        [STAThread]
        static void Main(string[] args)
        {
            WebBrowser webBrowser = new WebBrowser();

            webBrowser.ScrollBarsEnabled = false;
            webBrowser.ClientSize = new Size(400, 800);
            webBrowser.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(WebBrowser_DocumentCompleted);
            webBrowser.Navigate(@"D:\Demo.html");

            while(true)
            {
                Application.DoEvents();
            }
        }

        public static void WebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            ((WebBrowser)sender).BringToFront();

            Bitmap bitmap = new Bitmap(((WebBrowser)sender).Bounds.Width, ((WebBrowser)sender).Bounds.Height);
            ((WebBrowser)sender).DrawToBitmap(bitmap, ((WebBrowser)sender).Bounds);
            bitmap.Save(@"D:\Demo.bmp");    //按需自定义设置编解码格式

            ((WebBrowser)sender).Dispose();
        }
    }
}

三、总结

WebBrowser 是桌面WebUI的重要组件,利用该组件可以设计高度可定制的Web界面,是一个小型的内嵌浏览器。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# HTML转图片 的相关文章

  • 将数组向左或向右旋转一定数量的位置,复杂度为 o(n)

    我想编写一个程序 根据用户的输入 正 gt 负 include
  • 未解决的包含:“cocos2d.h” - Cocos2dx

    当我在 Eclipse 中导入 cocos2dx android 项目时 我的头文件上收到此警告 Unresolved inclusion cocos2d h 为什么是这样 它实际上困扰着我 该项目可以正确编译并运行 但我希望这种情况消失
  • C++ 子字符串返回错误结果

    我有这个字符串 std string date 20121020 我正在做 std cout lt lt Date lt lt date lt lt n std cout lt lt Year lt lt date substr 0 4 l
  • 为什么#pragma optimize("", off)

    我正在审查一个 C MFC 项目 在某些文件的开头有这样一行 pragma optimize off 我知道这会关闭所有以下功能的优化 但这样做的动机通常是什么 我专门使用它来在一组特定代码中获得更好的调试信息 并在优化的情况下编译应用程序
  • 在 Visual Studio 2008 上设置预调试事件

    我想在 Visual Studio 中开始调试程序之前运行一个任务 我每次调试程序时都需要运行此任务 因此构建后事件还不够好 我查看了设置的 调试 选项卡 但没有这样的选项 有什么办法可以做到这一点吗 你唯一可以尝试的 IMO 就是尝试Co
  • 电话输入自动填充会删除国际前缀

    我有一个类型为 tel 的输入字段 并启用了自动完成功能
  • C 预处理器库

    我的任务是开发源分析工具C程序 并且我需要在分析本身之前预处理代码 我想知道什么是最好的图书馆 我需要一些重量轻 便于携带的东西 与其推出自己的 为什么不使用cpp这是的一部分gcc suite http gcc gnu org onlin
  • 如何通过 jQuery 中的类获取特定 html 元素的innerHTML?

    我有这样的 HTML 代码 div class a html value 1 div div class a html value 2 div 我怎样才能访问html value 1 and html value 2使用jquery 分别地
  • 如何使整个跨度落入新行?

    这个片段显示了我想要的 http jsfiddle net 945Df 3 http jsfiddle net 945Df 3 div class sup strong a href Rosario Santa Fe Argentina a
  • 指针减法混乱

    当我们从另一个指针中减去一个指针时 差值不等于它们相距多少字节 而是等于它们相距多少个整数 如果指向整数 为什么这样 这个想法是你指向内存块 06 07 08 09 10 11 mem 18 24 17 53 7 14 data 如果你有i
  • 使用 System.Text.Json 即时格式化 JSON 流

    我有一个未缩进的 Json 字符串 例如 hash 123 id 456 我想缩进字符串并将其序列化为 JSON 文件 天真地 我可以使用缩进字符串Newtonsoft如下 using Newtonsoft Json Linq JToken
  • 在 ASP.NET Core 3.1 中使用包含“System.Web.HttpContext”的旧项目

    我们有一些用 Net Framework编写的遗留项目 应该由由ASP NET Core3 1编写的API项目使用 问题是这些遗留项目正在使用 System Web HttpContext 您知道它不再存在于 net core 中 现在我们
  • CSS 精灵按钮

    这些精灵按钮让我抓狂 我几乎可以让他们工作 但不完全是 我正在玩这个非常简单的精灵图像 我有一个 jsfiddle 项目 gt gt 这里 如果你想看的话 但如果你只想看一下 代码就在下面 http jsfiddle net jp2code
  • Facebook 点赞按钮消失

    我的网站中的 Facebook Like 按钮出现问题 添加此代码 由 facebook 提供 按钮在创建时正确显示在任何页面中
  • Discord.net 无法在 Linux 上运行

    我正在尝试让在 Linux VPS 上运行的 Discord net 中编码的不和谐机器人 我通过单声道运行 但我不断收到此错误 Unhandled Exception System Exception Connection lost at
  • 如何在 VBA 中声明接受 XlfOper (LPXLOPER) 类型参数的函数?

    我在之前的回答里发现了问题 https stackoverflow com q 19325258 159684一种无需注册即可调用 C xll 中定义的函数的方法 我之前使用 XLW 提供的注册基础结构 并且使用 XlfOper 类型在 V
  • 实体框架 4 DB 优先依赖注入?

    我更喜欢创建自己的数据库 设置索引 唯一约束等 使用 edmx 实体框架设计器 从数据库生成域模型是轻而易举的事 现在我有兴趣使用依赖注入来设置一些存储库 我查看了 StackOverflow 上的一些文章和帖子 似乎重点关注代码优先方法
  • Process.Start 阻塞

    我正在调用 Process Start 但它会阻止当前线程 pInfo new ProcessStartInfo C Windows notepad exe Start process mProcess new Process mProce
  • 使用 libcurl 检查 SFTP 站点上是否存在文件

    我使用 C 和 libcurl 进行 SFTP FTPS 传输 在上传文件之前 我需要检查文件是否存在而不实际下载它 如果该文件不存在 我会遇到以下问题 set up curlhandle for the public private ke
  • 使用按位运算符相乘

    我想知道如何使用按位运算符将一系列二进制位相乘 但是 我有兴趣这样做来查找二进制值的十进制小数值 这是我正在尝试做的一个例子 假设 1010010 我想使用每个单独的位 以便将其计算为 1 2 1 0 2 2 1 2 3 0 2 4 虽然我

随机推荐

  • 90后的头上少了头发,多了压力

    我已经不怎么笑了 内心也没有以前那么波动了 就像一潭死水 扔个石头都激不起水花 一个刚刚下班的网友这样形容工作后的自己 下了班回到家不就轻松了吗 不 其实只有加班后的回家路上 在地铁上那一个小时可以算得上轻松 虽然拥挤 可地铁上的通勤路 却
  • Python二级(10)——Python的计算机生态

    一 知识导图 二 计算思维 1 人类在认识世界 改造世界过程中表现出三种基 本的思维特征 以实验和验证为特征的实证思维 以物理学科为代表 以推理和演绎为特征的逻辑 思维 以数学学科为代表 以设计和构造为特征 的计算思维 以计算机学科为代表
  • 解决org.springframework.transaction.UnexpectedRollbackException: Transaction silently rolled back beca

    文章目录 1 复现错误 2 分析错误 3 分析spring的事务机制 3 1 入口程序 3 2 事务管理的主方法 3 3 细究各对象的获取 4 functionTwo方法抛异常后的回滚操作 5 functionOne方法尝试提交时的操作 6
  • 《区块链技术原理》笔记

    一 区块链的概念 侠义来讲 区块链是一种按照时间顺序将数据区块一顺序相连的方式组合成的一种链式数据结构 并以密码学方式保证的不可篡改和不可伪造的分布式账本 广义来讲 区块链技术利用链式数据结构来验证和存储数据 利用分布式节点共识算法来生成和
  • Java 单线程池、多线程池、同步、异步的实践

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 一 需求 二 解决方案 三 基本模块 1 定义线程池配置 处理异步请求 2 定义单线程池 处理顺序执行的异步请求 3 定义线程 执行具体的工作 4 定义接口API
  • “export ‘default‘ (imported as ‘VueRouter‘) was not found in ‘vue-router‘

    vue router 4使用时 报上面的错 代码是这么写的 import VueRouter from vue router const Test template h1 测试 h1 const routes name Test path
  • uni-app编写轮播图

    使用usw就会显示swiper的快捷代码
  • ReduceTask工作机制图解

    1 Copy阶段 ReduceTask从各个MapTask上远程拷贝一片数据 并针对某一片数据 如果其大小超过一定阈值 则写到磁盘上 否则直接放到内存中 2 Merge阶段 在远程拷贝数据的同时 ReduceTask启动了两个后台线程对内存
  • ARM体系结构简介 —— 迅为

    目录 单片机和ARM处理器 内存管理单元 MMU 高速缓冲存储器 CACHE 指令集 ARM的指令系统 ARM处理器工作模式 ARM处理器的内部寄存器 ARM处理器的异常 ARM中断向量 ARM架构的发展 单片机和ARM处理器 内存管理单元
  • 10. adb截图命令

    adb截图命令 adb shell screencap 输入以下命令进行截屏 adb shell screencap sdcard screen png 将截图上传到PC的F盘 已创建目录F screenshot adb pull sdca
  • docker 笔记1

    目录 1 为什么有docker 2 Docker 的核心概念 3 容器与虚拟机比较 3 1传统的虚拟化技术 3 2容器技术 3 3Docker容器的有什么作用 3 4应用案例 4 docker 安装下载 4 1CentOS Docker 安
  • 排序(7)归并排序

    6 归并排序 将两个有序表合并为一个有序表
  • (万字,细细阅读)竞赛算法入门必经算法模型(附带题目链接和模板)

    文章前言 一个普通的ACM算法竞赛选手 以前只知道写题 却没有自己弄一个算法流程 思考许久 决定整理一下算法 先从入门算法入手 如有不足 望指出 持续更新 直到完善 现在已经破万了 最后字数粗略估计将会达到6万字 写完有时间的话会写进阶版的
  • Angularjs的http请求

    1 使用 http发起请求 scope exportWord function item var config headers Content Type application json http post commonFileUrl pa
  • html怎么调用数据库数据类型,引用数据类型是什么?

    引用数据类型是指由类型的实际值引用 类似于指针 表示的数据类型 如果为某个变量分配一个引用类型 则该变量将引用 或 指向 原始值 不创建任何副本 引用类型包括类 接口 委托和装箱值类型 引用数据类型的概念 引用 reference 是c 的
  • 2020美赛D题解题思路方法:团队合作策略

    随着社会之间的联系越来越紧密 它们面临的一系列挑战也越来越复杂 我们依靠具有不同专业知识和不同观点的跨学科团队来解决许多最具挑战性的问题 在过去50多年里 我们对团队成功的概念性理解有了显著的进步 使得更好的科学 创新或物理团队能够解决这些
  • MobaXterm_Personal_12.2软件连接开发板

    MobaXterm Personal 12 2软件连接开发板会出现乱码 有以下几个原因 1 波特率没设置对 2 编码格式不对 要选GBK 我这边板子对应波特率是115200 流控也要关掉
  • OpenMMLab AI实战营第二天笔记

    图像分类与基础视觉模型 卷积神经网络 AlexNet 2012 第一个成功实现大规模图像的模型 在 ImagNet 数据集上达到 85 的 top 5 的准确率 5 个卷积层 3 个全连接层 共有 60M 个可学习参数 使用 ReLU 激活
  • linux环境部署jmeter并执行测试

    下载jmeter和jdk jmeter官网和java jdk官网下载压缩包文件 jmeter下载地址 点此下载 jmeter Apache JMeter Download Apache JMeter java jdk下载地址 点此下载 jd
  • C# HTML转图片

    C HTML转图片 一 WebBrowser 二 实例 1 HTML文件 2 CS代码 三 总结 一 WebBrowser WebBrowser常用来做应用内嵌的WebUI 使用时需要进入System Windows Forms程序集 二