Code inspections that spot common issues when working with custom fonts
MFractor includes several analysers to assist with working with custom fonts in XAML.
Unknown Embedded Font
When referencing embedded fonts in XAML using the
FontFamily attribute, it is possible to reference a font asset that is not defined.
To assist, MFractor inspects
FontFamily occurances and verifies that the font declaration is defined in the current assembly:
If able, MFractor will also suggest auto-corrections to change the unknown named font size to a closely matching named value.
Font's Build Action Is Not Embedded Resource
When referencing embedded font assets in Xamarin.Forms, it is possible to add a font asset to your project, export it and forget to set it's build action to
When MFractor encounters a
FontFamily reference to an exported font where it's build action is not
EmbeddedResource, it will warn you that the fonts build action is incorrect.
To resolve the issue, MFractor can change the fonts build action to
Unknown Font Glyph
When using the icon fonts in XAML and using a unicode character to lookup a particular icon, it is possible to reference a glyph that does not exist in that font asset.
To assist, MFractor detects unicode characters defined in XAML and, when a custom font is reference, inspect the font asset to see if the font glyph exists in the font asset:
Named Font Value Analysis
When using the
FontSize property in XAML, you may use the
NamedSize enum values to choose a specific known font size.
MFractor will inspect the named value provided to a
FontSize property and verify that it maps to a known value:
If able, MFractor will also suggest auto-corrections to change the invalid named font size to a closely matching named value.