我之前还发起过一个 项目, 名字也叫 HtmlCore, 见 《我发起了一个 .Net 开源 跨平台 GUI (界面开发框架)项目 HtmlCore》  https://www.cnblogs.com/KSongKing/p/9560723.html  ,

其实 这 2 个 项目是 相通 的, 是一个项目 。

HtmlCore  的 设计目标 是 未来 发展成为

1     ILBC / D# 开发 的 浏览器内核

2     ILBC 的 GUI 引擎

有关 ILBC, 见 《ILBC 规范》  https://www.cnblogs.com/KSongKing/p/10354824.html  ,

用 C# 写, 将来怎么变成 ILBC / D# 呢?

这很容易, D# 和 C#  的 语法 很相似, 把 C# 代码 稍作修改 就可以了 。

用 C# 写 浏览器 是一个 有意思 也 有意义 的 尝试,

只要 了解 GDI+ 编程, 就可以 着手 写一个 浏览器 了 。

.Net / C# 对 GDI+ 封装的很好 。

在 GDI+ 的 世界 里, 实现一个 半透明 效果 很容易,  实现 动画 也很容易 。

有 网友 提到, 浏览器 涉及 一个 “排版” 的 算法问题, 我想这并不太难, 可以试试 。

提到 “排版” 的 网友 说 GDI+ 用来写 浏览器 性能太差, 建议 用 DirectX, OpenGL, Vulkan 。

这建议很好, 但我在想 这些 DirectX, OpenGL, Vulkan 这些 图形接口程序 是怎么写的, 能不能自己写一个 ?

我发起了一个 用 C# 写 的 浏览器 开源项目 HtmlCore的更多相关文章

  1. 我发起了一个 支持 ServerFul 架构 的 .Net 开源项目 ServerFulManager

    大家好,  我发起了一个 支持 ServerFul 架构 的 .Net 开源项目 ServerFulManager . ServerFulManager 的 目标 是 实现一个 支持 ServerFu ...

  2. 我发起了一个 .Net Core 平台上的 开源项目 ShadowDomain 用于 热更新

    大家好,  我发起了一个 .Net Core 平台上的 开源项目 ShadowDomain  用于 热更新 . 简单的说, 原理就是 类似 Asp.net 那样 让 当前 WebApp 运行在一个 A ...

  3. 微人事 star 数超 10k,如何打造一个 star 数超 10k 的开源项目

    看了下,微人事(https://github.com/lenve/vhr)项目 star 数超 10k 啦,松哥第一个 star 数过万的开源项目就这样诞生了. 两年前差不多就是现在这个时候,松哥所在 ...

  4. 我发起了一个 用 javascript 写一个 Office 的 开源项目 JS Office

    用   js  写   Office,  说实在的,  把 现在已有的 各种 富文本编辑器 和 电子表格 js 库 收集起来 整合一下 就 差不多了 , 放到 前几天 那个 “  js 作为 一等公民 ...

  5. C#写的NoSQL开源项目/系统(系列)

    http://www.cnblogs.com/unruledboy/archive/2013/01/07/CSharpNoSQL.html 闲扯 好久没写开源项目了,也没写对新开源项目的介绍,今晚看了 ...

  6. C# 一个基于.NET Core3.1的开源项目帮你彻底搞懂WPF框架Prism

    --概述 这个项目演示了如何在WPF中使用各种Prism功能的示例.如果您刚刚开始使用Prism,建议您从第一个示例开始,按顺序从列表中开始.每个示例都基于前一个示例的概念. 此项目平台框架:.NET ...

  7. 分享一个简单易用的RPC开源项目—Tatala

    http://zijan.iteye.com/blog/2041894 这个项目最早(2008年)是用于一个网络游戏的Cache Server,以及一个电子商务的Web Session服务.后来不断增 ...

  8. 基于开源项目的在线网络视频直播项目---一个很好的电视直播开源项目Sopcast

    http://blog.csdn.net/roy_xu/article/details/2216559 http://115.com/?ct=rar&pickcode=ew52634xr2cr ...

  9. [开源项目]Shell4Win,一个在Windows下执行shell命令的解释器

    背景 顺利拿到心目中的理想offer之后,心里的负担一下减轻了很多,希望利用还没毕业之前这段难得的悠闲时间做一点有意义的事情.于是希望能做一个长久以来都想做的开源项目,就是题中提到的Windows下的 ...

随机推荐

  1. DevExpress v18.2版本亮点——Reporting篇(三)

    行业领先的.NET界面控件——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress Reporting v18.2 的新功能,新版3 ...

  2. 实例:用户界面控件Kendo UI vs DevExpress对比评测一

    在一次使用ASP.NET MVC进行开发的Web项目中,我们需要用户界面控件来帮助实现界面的大部分功能.由于项目比较复杂,我们最终确定对 Kendo UI 和 DevExpress 这两款国际知名的用 ...

  3. BluePrism初尝

    由于对工作的需求,现在开始接触了RPA. RPA是什么?第一次看见这个名词,我脑海里只有RPG的概念.一番查询,才知道是Robotic Process Automation的英文缩写,机器人流程自动化 ...

  4. H5页面访问java后台进行登录拦截

    1.未登录状态下进行拦截,回到登录页面 function judgeLogin(currentPage) { var judge=false; var storage=window.localStor ...

  5. PTA-栈

    1-1 若一个栈的输入序列为1,2,3,…,N,输出序列的第一个元素是i,则第j个输出元素是j−i−1. (2分) T         F   作者: DS课程组 单位: 浙江大学 1-2 若一个栈的 ...

  6. Strut2第一章

    一.Struts2的执行流程: 用户提交一个请求,服务器接收,交给Struts2的核心过滤器进行处理,Struts2的过滤器调用Struts2的一系列处理器来处理(如:解析struts.xml配置文件 ...

  7. beifen

    Comparison of Models for Predicting the Outcome of Craniocerebral Injury by Using Machine Learning   ...

  8. C# 比较和排序(IComparable和IComparer以及它们的泛型实现)

    准备工作: 1.创建实体类:ClassInfo,默认想要对其按照班级学生数量进行排序 public class ClassInfo  { /// <summary> /// 班级名称 // ...

  9. linux下怎么判断网卡速率?

    我们都知道ifconfig -a 可以列出所有网卡,但是怎么判读是千兆网卡还是百兆网卡呢? 1. 判断是千兆网卡还是百兆网卡 ethtool ethx 查看支持的速率 实际网卡速率可以看Speed 1 ...

  10. sql注入2

    一.查询数据库的版本号 http://10.1.2.5:10631/sqli/Less-2/?id=-1 union select 1,2,version() 二.查询数据库中所有的库名 http:/ ...