A shared library for FluentUI System Icons control library.
$ dotnet add package FluentIcons.CommonA multi-framework control library of fluentui-system-icons. Browse the icons in the online gallery.
| Package | Platform |
|---|---|
| meta package | |
| MAUI 10 |
Version 1.3 is a backports release for legacy platforms which are no longer supported by version 2.0. Starting in version 2.0, the underlying fonts have also been migrated from TTF to CFF.
| Package | Platform |
|---|---|
FluentIcons.Avalonia | |
FluentIcons.Avalonia.Fluent | |
FluentIcons.Maui | |
FluentIcons.Uwp | |
FluentIcons.WinUI | |
FluentIcons.WinUI |
<Page xmlns:ic="using:FluentIcons.WinUI">
<!-- or FluentIcons.Avalonia / FluentIcons.Avalonia.Fluent / FluentIcons.Maui / FluentIcons.Wpf -->
<ic:FluentIcon Icon="ArrowLeft" IconVariant="Regular" IconSize="Size32" />
<ic:SymbolIcon Symbol="Calendar" IconVariant="Color" />
</Page>This package features <FluentIcon>/<SymbolIcon> element, and <FluentIconSource>/<SymbolIconSource> on platforms with <IconSource>, which generally provide following properties:
Fluent...) / Symbol (for Symbol...) : Icon / SymbolIconVariant
Color variant added along with COLRv1 migration.Fluent...) : IconSizeFlowDirection
doubleBrushThe Fluent variant provides all sizes of icons untouched compared to upstream, while the Symbol variant mimics the APIs and appearances of SymbolIcon and Segoe Fluent Icons from WinUI, which is powered by a derived version from the child project Seagull Icons.
<Page xmlns:icx="using:FluentIcons.WinUI.Markup">
<Expander Header="{icx:SymbolIcon Symbol=ArrowLeft}" />
</Page>Markup extension classes have been added since version 1.1.242.
These extensions will bind their FlowDirection to that of the parent control, except FluentIconSourceExtension/SymbolIconSourceExtension on (non-Uno) UWP where IXamlServiceProvider is not available.
They are moved to a child namespace since version 1.3.
<Page xmlns:ic="using:FluentIcons.WinUI">
<ic:FluentIcon Icon="Trophy"
IconVariant="Filled"
Foreground="Gold"
ic:Outline.Foreground="Goldenrod" />
<ic:SymbolIcon Symbol="InkingToolAccent"
IconVariant="Filled"
Foreground="Gold"
ic:Outline.Symbol="InkingTool"
ic:Outline.Foreground="Goldenrod" />
</Page>
The new feature Outline is implemented for experiment since version 2.0.317.
The static class include following attached properties which could be applied to FluentIcon or SymbolIcon elements:
FluentIcon) / Symbol (for SymbolIcon) : Icon? / Symbol?
null, where the value will be inherited from the host control.IconVariant
Regular.BrushPlease note that due to limitations in rendering precision, unexpected color leakage may occur at the edges of the icons. To achieve a good display effect, you may need to avoid using combinations of fill and stroke colors with large hue differences.
⚠️ The extension method UseFluentIcons(this MauiAppBuilder builder) must be called to register fonts properly.
<SymbolImageSource> and SymbolImageSourceExtension are provided on MAUI as stand-ins.
All properties of type Brush are defined as Color instead, with the Color suffix added to the name.
The Win2D package is referenced by this library for the “Outline” feature, but with a relatively old version. While this brings you more flexibility, it is still recommended to override with the latest version of the package.
Color icons are broken on WPF, because of the lack of COLR rendering support. It also stops working in environments like macOS and WebAssembly when rendering with SkiaSharp 2, possibly affecting Avalonia and Uno.