MartinTopfstedt / FontAwesome5

WPF controls for the iconic SVG, font, and CSS toolkit Font Awesome 5.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

FontAwesome 6 is out. -> Check out https://github.com/MartinTopfstedt/FontAwesome6

FontAwesome5

Build Status

WPF (.Net and .Net Core) and UWP/WinUI controls for the iconic SVG, font, and CSS toolkit Font Awesome 5.

Font Awesome: https://github.com/FortAwesome/Font-Awesome

  • Current Version: v5.15.4

Getting Started

Installation

Install the FontAwesome5 NuGet Package: Install-Package FontAwesome5 or Install the FontAwesome5.WinUI NuGet Package: Install-Package FontAwesome5.WinUI

Usage XAML

The usage is the same like the version from charri, just the FontAwesomeIcon enumeration has changed to EFontAwesomeIcon and has the Styles included, which means "Flag" changed to "Solid_Flag" or "Regular_Flag", and the name space changed from "http://schemas.fontawesome.io" to "http://schemas.fontawesome.com".

https://github.com/charri/Font-Awesome-WPF/blob/master/README-WPF.md#usage-xaml

Usage XAML SVG

The SvgAwesome can be used like the ImageAwesome.

<Window x:Class="FontAwesome5.WPF.Example"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:fa5="http://schemas.fontawesome.com/icons/"
        Title="FontAwesome5.WPF.Example" Height="300" Width="300">
    <Grid  Margin="20">
        <fa5:SvgAwesome Icon="Solid_Flag" VerticalAlignment="Center" HorizontalAlignment="Center" />
    </Grid>
</Window>

Converters (WPF only)

ImageSourceConverter

https://github.com/charri/Font-Awesome-WPF/blob/master/README-WPF.md#imagesourceconverter

ImageSourceSvgConverter

This is the same like the ImageSourceConverter, except it does use the Svg information to draw the icon instead of the font.

LabelConverter

Gets the Label/Name of a EFontAwesomeIcon. The converter parameter can contain a format string, where {0} is the label/name and {1} is the style.

Example:

<Window x:Class="FontAwesome5.WPF.Example"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:fa5="http://schemas.fontawesome.com/icons/"
        Title="FontAwesome5.WPF.Example" Height="300" Width="300">
    <Window.Resources>
        <fa5:LabelConverter x:Key="LabelConverter"/>
    </Window.Resources>
    <Grid  Margin="20">        
        <TextBlock Text="{Binding EFontAwesomeIcon, Converter={StaticResource LabelConverter}}"/>                
        <TextBlock Text="{Binding EFontAwesomeIcon, Converter={StaticResource LabelConverter}, ConverterParameter='{}{0} ({1})'}"/>
    </Grid>
</Window>

StyleConverter

Gets the EFontAwesomeStyle of a EFontAwesomeIcon.

Example:

<Window x:Class="FontAwesome5.WPF.Example"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:fa5="http://schemas.fontawesome.com/icons/"
        Title="FontAwesome5.WPF.Example" Height="300" Width="300">
    <Window.Resources>
        <fa5:StyleConverter x:Key="StyleConverter"/>
    </Window.Resources>
    <Grid  Margin="20">        
        <TextBlock Text="{Binding EFontAwesomeIcon, Converter={StaticResource StyleConverter}}"/>                
    </Grid>
</Window>

Credits

About

WPF controls for the iconic SVG, font, and CSS toolkit Font Awesome 5.

License:MIT License


Languages

Language:C# 100.0%Language:Batchfile 0.0%