Avae.Printables
3.0.0
dotnet add package Avae.Printables --version 3.0.0
NuGet\Install-Package Avae.Printables -Version 3.0.0
<PackageReference Include="Avae.Printables" Version="3.0.0" />
<PackageVersion Include="Avae.Printables" Version="3.0.0" />
<PackageReference Include="Avae.Printables" />
paket add Avae.Printables --version 3.0.0
#r "nuget: Avae.Printables, 3.0.0"
#:package Avae.Printables@3.0.0
#addin nuget:?package=Avae.Printables&version=3.0.0
#tool nuget:?package=Avae.Printables&version=3.0.0
Avae.Printables
A crossplatform library for printing.
Features
Cross-Platform : Leverage APIs adapted for multiple environments.
MIT Licensed: Freely use, modify, and distribute under the permissive MIT License.
Getting Started
Follow these steps to integrate Avae.Printables into your Avalonia project.
Prerequisites
An Avalonia project set up with .NET.
Installation
Add Nuget Avae.Printables to Your Shared Project
Configuration
Enable Printables.
using Avae.Printables;
public static AppBuilder BuildAvaloniaApp()
=> AppBuilder.Configure<App>()
.UsePrintables()
.UsePlatformDetect()
.WithInterFont()
.LogToTrace();
Android
protected override AppBuilder CustomizeAppBuilder(AppBuilder builder)
{
return base.CustomizeAppBuilder(builder)
.UsePrintables(this, this)
.WithInterFont()
.UseReactiveUI();
}
iOS
protected override AppBuilder CustomizeAppBuilder(AppBuilder builder)
{
return base.CustomizeAppBuilder(builder)
.UsePrintables()
.WithInterFont()
.UseReactiveUI();
}
Browser (Please add nuget package Avae.Printables to project to make sure printing.js in wwwroot folder)
private static Task Main(string[] args) => BuildAvaloniaApp()
.WithInterFont()
.StartBrowserAppAsync("out").ContinueWith(async t =>
{
await JSHost.ImportAsync("printing", "/printing.js");
});
public static AppBuilder BuildAvaloniaApp()
=> AppBuilder.Configure<App>()
.UsePrintables();
Linux (the following workflow is required)
https://github.com/lytico/GtkSharp.Workload
Example: Print MainView
using Avae.Printable;
Printables.PrintAsync();
Example: Print visuals
using Avae.Printable;
var visual = Application.Current.ApplicationLifetime
is ISingleViewApplicationLifetime singleViewApplicationLifetime ? singleViewApplicationLifetime.MainView :
(Application.Current.ApplicationLifetime as IClassicDesktopStyleApplicationLifetime)?.MainWindow;
var panel = new Grid()
{
HorizontalAlignment = Avalonia.Layout.HorizontalAlignment.Stretch,
VerticalAlignment = Avalonia.Layout.VerticalAlignment.Stretch
};
panel.RowDefinitions.Add(new RowDefinition(GridLength.Star));
panel.Children.Add(new TextBlock()
{
Text = "Hello",
FontSize = 60,
HorizontalAlignment = Avalonia.Layout.HorizontalAlignment.Center,
VerticalAlignment = Avalonia.Layout.VerticalAlignment.Center
});
await Printable.PrintAsync([visual, panel]);
Built With
This package builds upon the excellent work of:
AvaloniaUI
SkiaSharp
License
Avae.Printables is licensed under the MIT License.
Contributing
Contributions are welcome! Please submit issues or pull requests to the GitHub repository. Ensure your code follows the project�s coding standards.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-android34.0 is compatible. net8.0-browser was computed. net8.0-browser1.0 is compatible. net8.0-gtk1.0 is compatible. net8.0-ios was computed. net8.0-ios18.0 is compatible. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-macos15.0 is compatible. net8.0-tvos was computed. net8.0-windows was computed. net8.0-windows10.0.19041 is compatible. 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. |
-
net8.0
- Avalonia (>= 11.1.3)
- Avalonia.Skia (>= 11.1.3)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.0)
- PDFtoImage (>= 5.1.1)
-
net8.0-android34.0
- Avalonia (>= 11.1.3)
- Avalonia.Android (>= 11.1.3)
- Avalonia.Skia (>= 11.1.3)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.0)
- PDFtoImage (>= 5.1.1)
-
net8.0-browser1.0
- Avalonia (>= 11.1.3)
- Avalonia.Browser (>= 11.1.3)
- Avalonia.Skia (>= 11.1.3)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.0)
-
net8.0-gtk1.0
- Avalonia (>= 11.1.3)
- Avalonia.Skia (>= 11.1.3)
- Avalonia.X11 (>= 11.1.3)
- GtkSharp (>= 3.24.24.95)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.0)
- PDFtoImage (>= 5.1.1)
- WebkitGtkSharp (>= 3.24.24.95)
-
net8.0-ios18.0
- Avalonia (>= 11.1.3)
- Avalonia.iOS (>= 11.1.3)
- Avalonia.Skia (>= 11.1.3)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.0)
- PDFtoImage (>= 5.1.1)
-
net8.0-macos15.0
- Avalonia (>= 11.1.3)
- Avalonia.Skia (>= 11.1.3)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.0)
- PDFtoImage (>= 5.1.1)
-
net8.0-windows10.0.19041
- Avalonia (>= 11.1.3)
- Avalonia.Skia (>= 11.1.3)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.0)
- Microsoft.WindowsAppSDK (>= 1.8.250916003)
- PDFtoImage (>= 5.1.1)
- SkiaSharp.Views.WinUI (>= 3.119.0)
- System.Drawing.Common (>= 9.0.9)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Avae.Printables:
| Package | Downloads |
|---|---|
|
Avae.Printables.Docx
Printing for avalonia |
|
|
Avae.Printables.Xps
Printing for avalonia |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 3.0.0 | 0 | 10/29/2025 |
| 2.0.1 | 32 | 10/28/2025 |
| 2.0.0 | 47 | 10/28/2025 |
| 1.0.29 | 78 | 10/27/2025 |
| 1.0.28 | 80 | 10/27/2025 |
| 1.0.27 | 81 | 10/27/2025 |
| 1.0.26 | 77 | 10/27/2025 |
| 1.0.25 | 78 | 10/27/2025 |
| 1.0.24 | 74 | 10/27/2025 |
| 1.0.22 | 75 | 10/27/2025 |
| 1.0.21 | 78 | 10/26/2025 |
| 1.0.20 | 74 | 10/26/2025 |
| 1.0.19 | 78 | 10/26/2025 |
| 1.0.18 | 81 | 10/26/2025 |
| 1.0.17 | 77 | 10/26/2025 |
| 1.0.16 | 81 | 10/26/2025 |
| 1.0.15 | 80 | 10/26/2025 |
| 1.0.14 | 82 | 10/26/2025 |
| 1.0.13 | 75 | 10/26/2025 |
| 1.0.12 | 75 | 10/26/2025 |
| 1.0.11 | 78 | 10/26/2025 |
| 1.0.10 | 76 | 10/25/2025 |
| 1.0.9 | 78 | 10/25/2025 |
| 1.0.8 | 81 | 10/25/2025 |
| 1.0.7 | 157 | 10/22/2025 |
| 1.0.6 | 155 | 10/22/2025 |
| 1.0.5 | 149 | 10/22/2025 |
| 1.0.4 | 154 | 10/21/2025 |
| 1.0.3 | 150 | 10/21/2025 |
| 1.0.2 | 146 | 10/20/2025 |
| 1.0.1 | 151 | 10/20/2025 |
| 1.0.0 | 148 | 10/19/2025 |