前面接触过一个在控制台输出二维码图片的项目,其原理就是按像素解析图片,然后按照像素颜色的不同来设置控制台颜色,进而输出到控制台。最近发现了一个有趣的项目 Spectre.Console https://github.com/spectreconsole/spectre.console ,可以使用这个库来构建漂亮的控制台应用程序,其中有一个功能我非常感兴趣,就是将图片打印在控制台上,其原理应该和前面的输出二维码原理相同。
安装nuget包:Spectre.Console、Spectre.Console.ImageSharp,然后一句代码即可:
AnsiConsole.Render(new CanvasImage("/Users/lzq/test.png"));
运行效果如下: