一个库帮你轻松的创建漂亮的.NET控制台应用程序

本文主要讲解关于一个库帮你轻松的创建漂亮的.NET控制台应用程序相关内容,让我们来一起学习下吧!

前言

做过.NET控制台应用程序的同学应该都知道原生的.NET控制台应用程序输出的内容都比较的单调,假如要编写漂亮且美观的控制台输出内容或者样式可能需要花费不少的时间去编写代码和调试。今天大姚给大家分享一个.NET开源且免费的类库帮你轻松的创建漂亮、美观的.NET控制台应用程序:Spectre.Console。

一个库帮你轻松的创建漂亮的.NET控制台应用程序

项目特性

  • 该库有着丰富的组件,其中包括表格、网格、面板、日历、以及画布图像等。
  • 支持文本样式的最常见的 SRG 参数,如粗体、暗淡、斜体、下划线、删除线和闪烁文本。
  • 支持终端中的3/4/8/24位颜色。该库将检测当前终端的功能,并根据需要降低颜色。

项目源代码

一个库帮你轻松的创建漂亮的.NET控制台应用程序

一个库帮你轻松的创建漂亮的.NET控制台应用程序

新建控制台应用

创建一个名为:SpectreExercise的控制台应用。

一个库帮你轻松的创建漂亮的.NET控制台应用程序

一个库帮你轻松的创建漂亮的.NET控制台应用程序

一个库帮你轻松的创建漂亮的.NET控制台应用程序

安装项目的NuGet包

在NuGet包管理器中搜索:Spectre.Console 点击安装。

一个库帮你轻松的创建漂亮的.NET控制台应用程序

控制台文字输出

原生自带的

Console.WriteLine("你好追逐时光者!!!");

一个库帮你轻松的创建漂亮的.NET控制台应用程序

类库设置的

AnsiConsole.Markup("[underline red]你好[/][Blue]追逐时光者[/][DarkMagenta]!!![/]");

一个库帮你轻松的创建漂亮的.NET控制台应用程序

类库文档颜色选择表:https://spectreconsole.net/appendix/colors

一个库帮你轻松的创建漂亮的.NET控制台应用程序

table表格输出

            #region 创建表            // 创建表            var table = new Table();            //添加一些列            table.AddColumn("[red]编号[/]");            table.AddColumn("[green]姓名[/]");            table.AddColumn("[blue]年龄[/]");            //添加一些行            table.AddRow("1", "追逐时光者", "20岁");            table.AddRow("2", "大姚", "22岁");            table.AddRow("3", "小袁", "18岁");            table.AddRow("4", "小明", "23岁");            // 将表格渲染到控制台            AnsiConsole.Write(table);            #endregion

一个库帮你轻松的创建漂亮的.NET控制台应用程序

条形图

使用 BarChart 将条形图呈现到控制台。

            #region 条形图            AnsiConsole.Write(new BarChart()    .Width(60)    .Label("[green bold underline]水果数量[/]")    .CenterLabel()    .AddItem("苹果", 12, Color.Yellow)    .AddItem("西瓜", 54, Color.Green)    .AddItem("香蕉", 33, Color.Red)    .AddItem("芒果", 55, Color.Blue));            #endregion

一个库帮你轻松的创建漂亮的.NET控制台应用程序

日历

            //日历            var calendar = new Calendar(2024, 5);            AnsiConsole.Write(calendar);

一个库帮你轻松的创建漂亮的.NET控制台应用程序

布局

使用 Layout 在终端中布局小部件。

#region 布局// Create the layoutvar layout = new Layout("Root")    .SplitColumns(        new Layout("Left"),        new Layout("Right")            .SplitRows(                new Layout("Top"),                new Layout("Bottom")));// Update the left columnlayout["Left"].Update(    new Panel(        Align.Center(            new Markup("[blue]你好![/]"),            VerticalAlignment.Middle))        .Expand());// Render the layoutAnsiConsole.Write(layout);#endregion

一个库帮你轻松的创建漂亮的.NET控制台应用程序

规则水平线

            var rule = new Rule("[red]Hello[/]");            AnsiConsole.Write(rule);            var ruleLeft = new Rule("[blue]Hello[/]");            ruleLeft.Justification = Justify.Left;            AnsiConsole.Write(ruleLeft);            var ruleRight = new Rule("[yellow]Hello[/]");            ruleRight.Justification = Justify.Right;            AnsiConsole.Write(ruleRight);

一个库帮你轻松的创建漂亮的.NET控制台应用程序

项目源码地址

更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。

  • GitHub开源地址:https://github.com/spectreconsole/spectre.console
  • 在线文档:https://spectreconsole.net/quick-start

优秀项目和框架精选

该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞)。

  • https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md

DotNetGuide技术社区交流群

  • DotNetGuide技术社区是一个面向.NET开发者的开源技术社区,旨在为开发者们提供全面的C#/.NET/.NET Core相关学习资料、技术分享和咨询、项目框架推荐、求职和招聘资讯、以及解决问题的平台。
  • 在DotNetGuide技术社区中,开发者们可以分享自己的技术文章、项目经验、学习心得、遇到的疑难技术问题以及解决方案,并且还有机会结识志同道合的开发者。
  • 我们致力于构建一个积极向上、和谐友善的.NET技术交流平台。无论您是初学者还是有丰富经验的开发者,我们都希望能为您提供更多的价值和成长机会。

欢迎加入DotNetGuide技术社区微信交流群👪

以上就是关于一个库帮你轻松的创建漂亮的.NET控制台应用程序相关的全部内容,希望对你有帮助。欢迎持续关注程序员导航网,学习愉快哦!

版权声明:cnblogshot 发表于 2024-04-28 10:25:32。
转载请注明:一个库帮你轻松的创建漂亮的.NET控制台应用程序 | 程序员导航网

暂无评论

暂无评论...