Générer un PDF à partir de HTML en C#

Lorsque vous naviguez sur divers sites Web, vous souhaiterez peut-être télécharger le contenu HTML d’une page Web sous forme de fichier PDF pour une utilisation ultérieure. Dans ce cas, vous avez besoin d’un convertisseur tout-en-un pour convertir correctement votre contenu HTML en PDF. En tant que développeur C#, nous pouvons facilement convertir le contenu HTML de fichiers HTML en documents PDF. Nous pouvons également générer un document PDF à partir d’une chaîne HTML ou enregistrer une page Web au format PDF à partir d’une URL en direct. Dans cet article, nous allons apprendre à générer un PDF à partir de HTML en C#.

Les sujets suivants seront traités dans cet article :

  1. API C# pour générer un PDF à partir de HTML
  2. Générer un document PDF à partir de HTML
  3. Convertir HTML en PDF avec les options d’enregistrement
  4. Générer un PDF à partir d’une chaîne HTML
  5. Générer un PDF à partir de l’URL en direct

API C# pour générer un PDF à partir de HTML

Pour générer un document PDF à partir d’un fichier HTML, nous utiliserons l’API Aspose.HTML pour .NET. Il s’agit d’une API de traitement HTML avancée qui permet de créer, de modifier et d’extraire des données à partir de documents HTML. Il permet également de convertir et de rendre des documents HTML sans aucun logiciel externe.

La classe HTMLDocument de l’API représente un document HTML ou la page Web que nous voyons dans le navigateur. La classe PdfSaveOptions permet de spécifier diverses options d’enregistrement lors de l’enregistrement au format PDF. Nous avons la classe Converter qui fournit une large gamme de conversions vers les formats populaires, tels que PDF, XPS, les formats d’image, etc. Elle fournit les méthodes ConvertHTML() pour convertir HTML en d’autres formats.

Veuillez soit télécharger la DLL de l’API ou l’installer à l’aide de NuGet.

PM> Install-Package Aspose.Html

Générer un document PDF à partir de HTML en C#

Nous pouvons facilement générer un document PDF à partir d’un fichier HTML en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un document HTML à l’aide de la classe HTMLDocument.
  2. Ensuite, créez une instance de la classe PdfSaveOptions.
  3. Enfin, appelez la méthode Converter.ConvertHTML() pour générer un PDF. Il prend HTMLDocument, PdfSaveOptions et le chemin du fichier PDF de sortie comme arguments.

L’exemple de code suivant montre comment générer un document PDF à partir d’un fichier HTML à l’aide de C#.

// Cet exemple de code montre comment générer un document PDF à partir d'un fichier HTML.
// Entrez le chemin du fichier HTML
string documentPath = @"C:\Files\sample.html";

// Chemin du fichier PDF de sortie 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// Charger le fichier HTML d'entrée
var document = new HTMLDocument(documentPath);

// Initialiser PdfSaveOptions 
var options = new PdfSaveOptions();

// Convertir HTML en PDF
Converter.ConvertHTML(document, options, savePath);
Générer-un-document-PDF-depuis-HTML-dans-CSharp

Générer un document PDF à partir de HTML en C#

Convertir HTML en PDF avec les options d’enregistrement en C#

Nous pouvons générer un document PDF à partir d’un fichier HTML avec des options de sauvegarde supplémentaires en suivant les étapes ci-dessous :

  1. Tout d’abord, chargez un document HTML à l’aide de la classe HTMLDocument.
  2. Ensuite, créez une instance de la classe PdfSaveOptions.
  3. Après cela, spécifiez les options d’enregistrement telles que HorizontalResolution, VerticalResolution, etc.
  4. Enfin, appelez la méthode Converter.ConvertHTML() pour générer un PDF.

L’exemple de code suivant montre comment générer un PDF à partir d’un fichier HTML avec des options supplémentaires en C#.

// Cet exemple de code montre comment générer un document PDF à partir d'un fichier HTML avec les options d'enregistrement.
// Entrez le chemin du fichier HTML
string documentPath = @"C:\Files\sample.html";

// Chemin du fichier PDF de sortie 
string savePath = Path.Combine(@"C:\Files\output.pdf");

// Charger le fichier HTML d'entrée
var document = new HTMLDocument(documentPath);

// Initialisez PdfSaveOptions. 
// Configurez la taille de la page, les marges, les résolutions et changez la couleur d'arrière-plan en AliceBlue 
var options = new PdfSaveOptions()
{
    HorizontalResolution = 200,
    VerticalResolution = 200,
    JpegQuality = 100,
    BackgroundColor = Color.AliceBlue
};

options.PageSetup.AnyPage = new Page(new Aspose.Html.Drawing.Size(600, 300), new Margin(20, 10, 10, 10));

// Convertir HTML en PDF
Converter.ConvertHTML(document, options, savePath);

Générer un PDF à partir d’une chaîne HTML en C#

Nous pouvons également générer un document PDF à partir d’une chaîne HTML en suivant les étapes ci-dessous :

  1. Tout d’abord, créez une instance de la classe PdfSaveOptions.
  2. Facultativement, définissez les options d’enregistrement.
  3. Enfin, appelez la méthode Converter.ConvertHTML() pour générer un PDF. Il prend la chaîne HTML, PdfSaveOptions et le chemin du fichier PDF de sortie comme arguments.

L’exemple de code suivant montre comment générer un PDF à partir d’une chaîne HTML à l’aide de C#.

// Cet exemple de code montre comment générer un document PDF à partir d'une chaîne HTML.
string htmlString = @"<h1>Convert HTML to PDF!</h1><br/><h2>This is Sample Heading!</h2><p>This is first paragraph.</p>";

// Initialiser PdfSaveOptions 
var options = new PdfSaveOptions();

// Appelez la méthode ConvertHTML pour convertir le code HTML en PDF           
Converter.ConvertHTML(htmlString, ".", options, @"C:\Files\HtmlStringToPdf.pdf");
Générer un PDF à partir d'une chaîne HTML dans CSharp

Générer un PDF à partir d’une chaîne HTML en C#

Générer un PDF à partir d’une URL en direct en C#

Dans la section précédente, nous avons vu comment générer un PDF à partir d’une chaîne HTML. Nous pouvons également enregistrer une page Web à partir d’une URL vers un document PDF en suivant les étapes ci-dessous :

  1. Tout d’abord, créez une instance de la classe Url avec l’URL d’une page Web.
  2. Ensuite, créez une instance de la classe PdfSaveOptions.
  3. Facultativement, définissez les options d’enregistrement.
  4. Enfin, enregistrez le HTML au format PDF à l’aide de la méthode Converter.ConvertHTML(). Il prend l’URL, PdfSaveOptions et le chemin du fichier PDF de sortie comme arguments.

L’exemple de code suivant montre comment générer un PDF à partir d’une URL en direct à l’aide de C#.

// URL
Url url = new Url("https://docs.aspose.com/diagram/net/");

// Initialiser PdfSaveOptions 
var options = new PdfSaveOptions();

// Convertir le code HTML en PDF
Converter.ConvertHTML(url, options, @"C:\Files\outputFromURL.pdf");

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer Aspose.HTML pour .NET sans limitations d’évaluation.

Conclusion

Dans cet article, nous avons appris à :

  • charger un fichier HTML par programmation ;
  • définir les options d’enregistrement PDF ;
  • enregistrer la chaîne HTML au format PDF ;
  • enregistrer une page Web en tant que document PDF ;
  • convertir un fichier HTML en PDF en C#.

Outre la génération de PDF à partir de HTML en C#, vous pouvez en savoir plus sur l’API Aspose.HTML pour .NET à l’aide de documentation. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également