S2iEvolution.Razor2Pdf.Html 8.1.0

Razor to PDF

Bibliothèque permettant d'ajouter à un projet ASP.Net la fonctionnalité de conversion de vues Razor vers PDF (également de plain html vers PDF).

Sommaire

Dépendances

Convertisseur

Cette bibliothèque repose sur un système générique de vendor (fournisseur) pour fournir le système de conversion. Ce qui signifie que le système peut s'adapter et il est possible dans le futur de passer une un autre backend de conversion. Actuellement le backend de conversion est le programme python Weasyprint pour générer les PDF. Il est automatiquement installé dans un environnement python virtuel via pip. Vous pourrez retrouver cet environnement dans <path to executable>/vendors/weasyprint.

Python

Il faut que Python 3 soit installé pour utiliser cette bibliothèque. En outre le module venv de python doit être utilisable (par défaut dans python 3) et le dossier à côté de l'executable doit être inscriptible afin de télécharger la librairie de conversion.

S2iEvolution Process Execute

Cette bibliothèque utilise S2iEvolution.ProcessExecute pour lancer des commandes en ligne de commande. Il est inclut en dépendances de paquet nuget.

Razor

Ce service permet de générer des pdf directement à partir de fichier en .razor, il inclu donc la dépendance Microsoft.AspNetCore.Components.Web et nécessite que le projet final soit configuré pour traiter les composants razor. C'est le cas par défaut pour les projets ASP.Net MVC, pour les autres types, voir la section Mise en place > Projet générique

Mise en place

Projet ASP.Net MVC

Pour les projet MVC il suffit d'ajouter le service de génération à la collection de services via builder.Services.AddRazor2Pdf() et d'ajouter l'initialisation du convertisseur de pdf via app.InitializeRazor2Pdf().

using S2iEvolution.Razor2Pdf;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddRazor2Pdf(); // <-- Ajout du service de génération

/** ... */

var app = builder.Build();

/** ... */

app.InitializeRazor2Pdf(); // <-- Initialisation du convertisseur de pdf

/** ... */

app.Run();

Projet hosté générique

Par défaut les projets C# hors ASP.Net de sont pas configurés pour compiler les vues razor, il faut donc modifier le fichier .csproj pour mettre en place cette fonctionnalité.

Il faut remplacer la ligne:

<Project Sdk="Microsoft.NET.Sdk">

Par la ligne:

<Project Sdk="Microsoft.NET.Sdk.Razor">

La mise à disposition du service se fait de la même manière que pour les projets ASP.Net.

Showing the top 20 packages that depend on S2iEvolution.Razor2Pdf.Html.

Packages Downloads
S2iEvolution.Razor2Pdf
Classe permettant de convertir un composant Razor ou de l'HTML pur en PDF.
7
S2iEvolution.Razor2Pdf
Classe permettant de convertir un composant Razor ou de l'HTML pur en PDF.
4

Version Downloads Last updated
8.1.0 104 01/13/2025
8.0.0 7 01/13/2025