FontResolver.PdfSharp
1.1.0
dotnet add package FontResolver.PdfSharp --version 1.1.0
NuGet\Install-Package FontResolver.PdfSharp -Version 1.1.0
<PackageReference Include="FontResolver.PdfSharp" Version="1.1.0" />
<PackageVersion Include="FontResolver.PdfSharp" Version="1.1.0" />
<PackageReference Include="FontResolver.PdfSharp" />
paket add FontResolver.PdfSharp --version 1.1.0
#r "nuget: FontResolver.PdfSharp, 1.1.0"
#:package FontResolver.PdfSharp@1.1.0
#addin nuget:?package=FontResolver.PdfSharp&version=1.1.0
#tool nuget:?package=FontResolver.PdfSharp&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
- FontResolver (>= 1.1.0)
- Microsoft.Win32.Registry (>= 5.0.0)
- PDFsharp (>= 6.2.3)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.