Table of Contents


Razor2Pdf renders ASP.NET Core Razor Pages as PDFs using WeasyPrint.


  1. Ensure that the weasyprint command is in your PATH. You can:
  2. Add a reference to the NanoByte.Razor2Pdf NuGet package to your project.
  3. Add a call to services.AddRazor2Pdf() in your ConfigureServices() method in Startup.cs.

You can now use dependency injection to get an instance of IPdfRenderer and use it like this:

FileStreamResult result = await pdfRenderer.RenderAsync("path/to/my/view", new MyViewModel(...));

See the sample project for more details.