FontResolver 1.1.0
dotnet add package FontResolver --version 1.1.0
NuGet\Install-Package FontResolver -Version 1.1.0
<PackageReference Include="FontResolver" Version="1.1.0" />
<PackageVersion Include="FontResolver" Version="1.1.0" />
<PackageReference Include="FontResolver" />
paket add FontResolver --version 1.1.0
#r "nuget: FontResolver, 1.1.0"
#:package FontResolver@1.1.0
#addin nuget:?package=FontResolver&version=1.1.0
#tool nuget:?package=FontResolver&version=1.1.0
Font Resolver
Font Resolver is a cross-platform library to resolve font paths based on their font names.
The library was originally developed to be used with PDFsharp. However, since resolving font files cross-platform can be useful in general, two separate packages have been created:
Goals
- Resolve font files cross-platform
- Keep the dependency graph minimal
- Remain .NET Standard 2.0 compatible
- Turn contributors into maintainers
Note: TrueType Collections (*.ttc) are not supported at the moment, as PDFsharp can't load them.
Install
Add the NuGet package to your project:
dotnet add package FontResolver
If you intend to use FontResolver with PDFsharp, use the FontResolver.PdfSharp package (which depends on FontResolver) instead:
dotnet add package FontResolver.PdfSharp
Usage
Standalone
using FontResolver;
// ...
var style = new FontStyle(bold: false, italic: false);
var font = FontResolver.Resolve("Arial", style with { Bold = true });
PDFsharp
using FontResolver.PdfSharp;
using MigraDoc.DocumentObjectModel;
using MigraDoc.Rendering;
// ...
// Before rendering the PDF document call
FontResolverPdfSharp.Register();
// Or alternatively register the font resolver yourself
GlobalFontSettings.FontResolver = new FontResolverPdfSharp();
// ...
var migraDocDocument = new Document();
migraDocDocument.AddSection();
// ...
var renderer = new PdfDocumentRenderer
{
Document = migraDocDocument
};
renderer.RenderDocument();
var pdfDocument = renderer.PdfDocument;
pdfDocument.Save("file.pdf");
Register Custom Font Directories
You can register custom font directories to be searched by the font resolver:
FontResolver.RegisterFontDirectory("path/to/custom/directory/with/fonts");
// Or for PDFsharp
FontResolverPdfSharp.RegisterFontDirectory("path/to/custom/directory/with/fonts");
Discover Font Families
Discover all the font families available on the system:
var fontFamilies = FontResolver.DiscoverFontFamilies();
License
FontResolver is licensed under the MIT license, see the LICENSE file.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Microsoft.Win32.Registry (>= 5.0.0)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on FontResolver:
| Package | Downloads |
|---|---|
|
FontResolver.PdfSharp
Font Resolver for PDFSharp provides a cross-platform font resolver to be used with PDFSharp to resolve font paths based on their font names |
GitHub repositories
This package is not used by any popular GitHub repositories.