ASCII banner generation for .NET
$ dotnet add package Figgle _____ _ _
| __|_|___ ___| |___
| __| | . | . | | -_|
|__| |_|_ |_ |_|___|
|___|___|
Console.WriteLine(
FiggleFonts.Standard.Render("Hello, World!"));
Produces...
_ _ _ _ __ __ _ _ _
| | | | ___| | | ___ \ \ / /__ _ __| | __| | |
| |_| |/ _ \ | |/ _ \ \ \ /\ / / _ \| '__| |/ _` | |
| _ | __/ | | (_) | \ V V / (_) | | | | (_| |_|
|_| |_|\___|_|_|\___( ) \_/\_/ \___/|_| |_|\__,_(_)
|/
Figgle packageThis NuGet package contains the core library for parsing FIGlet fonts and using those fonts to render ASCII text banners.
Users of this package will typically also use either:
Figgle.Fonts which contains over 250+ fonts.Figgle.Generator which uses a source generator to improve performance:
Figgle.Fonts package.The Figgle package targets .NET Standard 2.0, so runs pretty much anywhere. If you require .NET Standard 1.3, use package version 0.4.1.
If you just want to see some code (it's not that complex) check out one of the following sample projects:
| Sample | Description |
|---|---|
| Basics | The easiest option, if you don't care about application size or memory use. |
| Static text generation | For statically-known text, have a source generator embed the rendered text directly into your assembly. Uses the Figgle.Generator package, and uses a single attribute to render the text at compile time. If all Figgle text is rendered this way, you don't have to ship any Figgle assembly with your app. |
| Embed font from package | For dynamic text, using a font from the Figgle.Fonts package via abn attribute. The font is embedded directly into your assembly. With this approach, you only need the lightweight Figgle package at runtime. |
Embed font from .flf file | For dynamic text, using a .flf font file via an attribute and <AdditionalFiles> project item in the .csproj. The font is embedded directly into your assembly. With this approach, you only need the lightweight Figgle package at runtime. |