Windows控制台界面(思考cmd窗口)对用户来说是一个非常简单的GUI.然而,处理渲染,用户输入和滚动的效率水平非常高.用于创建此接口的方法无疑与传统桌面GUI的方法完全不同.
我有兴趣为Windows创建自己的自定义控制台/终端,最好使用基于C#和.NET的技术(例如托管GDI +或WPF).作为一个起点,我非常希望重新创建标准的简单Windows shell.然后,我可以扩展内容并从中添加功能.
我正在寻找有关如何创建这样的控制台UI的一般指导,但一些具体要点包括:
我应该使用什么样的渲染模型?渲染循环?部分更新(如WPF)?WinForms模型(不确定这是如何工作的)?
渲染模型中使用了哪种缓存?
如何加载字体以及如何呈现它们?它们是标准的TrueType字体,位图字体还是其他什么?
滚动如何有效地执行?
您认为可能与之相关的任何其他内容!
事实上,对内置Windows控制台UI(甚至是高级Linux终端UI)如何做这些事情以及如何模仿它们的任何解释都是理想的.
编辑:要清楚,我真的想从头开始完成这项工作.基于像GDI +或WPF这样的图形框架,但不多了.