COMPARAISON DES PRODUITS

Tutoriel d'ActivePDF DocConverter et comparaison avec IronPDF

Chaknith Bin
Chaknith Bin
septembre 23, 2021
Partager:

Le ActivePDF Toolkit est un composant logiciel utilisé pour travailler avec des fichiers PDF (y compris la génération de fichiers PDF à partir de différentes sources) et pour définir ses propriétés (comme l'en-tête, le pied de page, la marge ou le filigrane).

IronPDF est une bibliothèque PDF C# qui offre également ces fonctions, avec des tarifs compétitifs.

Nous examinerons ici les fonctions, les exemples de code et les actions pas à pas permettant d'utiliser les deux composants logiciels dans un projet .NET Visual Studio, afin que vous puissiez décider par vous-même de ce qui convient le mieux à votre application.


Vue d'ensemble

À propos de la bibliothèque C# d'IronPDF

Iron Software est un fournisseur de composants leader sur le marché, qui propose IronPDF pour travailler avec des fichiers PDF. Un moyen complet de générer facilement des fichiers PDF à partir de différents formats et de définir toutes les propriétés par programme. Il est privilégié par les développeurs en raison de la cohérence, de la fiabilité et de la précision de la sortie des fichiers PDF en utilisant seulement quelques lignes de code.

IronPDF est conçu pour C#, .NET, VB, ASPX, ASP.NET, MVC et .NET Core. Elle prend en charge Visual Studio, NuGet, Linux, Azure, Docker, et bien plus encore.

À propos de la boîte à outils ActivePDF

ActivePDF est une entreprise de logiciels qui fournit de nombreux composants pour gérer les fichiers PDF. Contrairement au composant unique IronPDF, ActivePDF offre différentes solutions pour les fichiers PDF. Par exemple, pour réduire la taille des fichiers PDF, vous pouvez utiliser ActivePDF Compressor. Pour créer des PDF à partir de sources HTML, utilisez ActivePDF WebGrabber.

Dans cet article, nous utiliserons ActivePDF WebGrabber pour le comparer à IronPDF :

ActivePDF WebGrabber pour la création de PDF

ActivePDF WebGrabber est un composant distinct d'ActivePDF spécifiquement utilisé pour générer des fichiers PDF à partir de sources HTML telles que l'URL, le fichier HTML ou la chaîne HTML. Il offre également des fonctions permettant de définir les propriétés des pages, telles que l'en-tête, le pied de page, la marge, le filigrane ou le signet, afin de créer des fichiers PDF conformes à nos exigences.


Comparaison

1. Tableau de comparaison entre ActivePDF et IronPDF

Jetons un coup d'œil à la comparaison côte à côte des deux composants.

IronPDFActivePDF
IronPDF converts HTML sources to PDF files.ActivePDF converts HTML sources to PDF files.
IronPDF supports .NET Core.ActivePDF does not support .NET Core.
IronPDF supports .NET 4.0 or higher.ActivePDF supports .NET 4.6.2 or higher.
IronPDF supports macOS.ActivePDF does not support macOS.
IronPDF can apply CSS to set WaterMark properties.ActivePDF does not support CSS to set WaterMark properties.
IronPDF can set Paper Orientation of PDF files.ActivePDF can set Paper Orientation of PDF files.
IronPDF provides the RenderDelay function to delay the PDF conversion.ActivePDF provides the TimeoutSpan function to delay the PDF conversion.
IronPDF provides predefined functions to set Header or Footer.ActivePDF requires setting Header and Footer by raw HTML and CSS.
IronPDF provides a predefined function to draw a horizontal line to separate content.ActivePDF does not provide a line to separate headers and footers.
To save the PDF file, we can set the directory and file name in one line.We have to set file directory and file name separately.
Need to write fewer lines of code with a simple programming structure.Need to write many lines of code.
License starts from $749.License starts from $1180.

Étape 1 : Installation

2. Comment installer IronPDF ?

Vous pouvez ajouter la bibliothèque IronPDF à votre projet de deux manières différentes, sans que cela ne change quoi que ce soit.

Gestionnaire de paquets NuGet

  • Ouvrez le gestionnaire de paquets NuGet dans votre projet Visual Studio.
  • Recherchez IronPDF, puis installez-le.

    Alternativement :

  • Allez à tools
  • Sélectionnez la console du gestionnaire de packages
  • Exécutez la commande suivante :
Install-Package IronPdf

Télécharger manuellement IronPDF.dll

Nous pouvons également télécharger IronPDF.dll, puis ajouter sa référence dans le projet.

Si vous pouvez accéder à IronPDF en écrivant using IronPdf; namespace, cela signifie que IronPDF a été importé avec succès dans votre projet et est prêt à être utilisé.


Comment installer WebGrabber

Téléchargez WebGrabber-install.exe, et sélectionnez le fichier à télécharger. Une fois téléchargé, double-cliquez sur le fichier téléchargé. Puis, demandez une clé d'activation à ActivePDF pour une utilisation avec la clé d'évaluation de 15 jours suivante : 001-AEALX-LC6Z5-7YD95-S3D8J-3LR25.

Une fois l'installation réussie, rendez-vous dans le répertoire suivant :

C:\Program Files\ActivePDF\WebGrabber\bin\

Dans ce répertoire, vous obtenez le fichier APWebGrabber.Net45.dll. Ajoutez sa référence dans votre projet Visual Studio.

Maintenant, si vous pouvez accéder à WebGrabber en écrivant using APWebGrabber; namespace, cela signifie que ActivePDF WebGrabber a été importé avec succès dans votre projet et que vous pouvez l'utiliser.

Documentation ActivePDF est disponible pour en savoir plus sur l'installation de ActivePDF WebGrabber.


Tutoriels

Utilisation d'IronPDF et de WebGrabber

Nous avons vu l'introduction de ces deux composants et leurs processus d'installation, et nous allons maintenant commencer la comparaison en effectuant différentes tâches à l'aide de ces deux composants. Cela nous permettra de comprendre la structure de programmation des deux et de décider laquelle est la meilleure pour nos projets. Pour une meilleure compréhension, nous exécuterons un cas d'utilisation spécifique dans chaque tâche et fournirons le code utilisé pour la mise en œuvre.


3. Convertir une chaîne HTML en fichier PDF

Dans la première comparaison, nous prendrons un cas d'utilisation dans lequel nous devons créer un fichier PDF à partir d'une chaîne HTML et l'enregistrer à l'emplacement cible. Tout d'abord, nous commençons à mettre en œuvre ce cas d'utilisation par IronPDF :

3.1. Chaîne HTML avec IronPDF

/**
HTML String to PDF
anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new ChromePdfRenderer();
    //HTML Source
    string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
    //convert HTML string to PDF file
    using var PDF = converter.RenderHtmlAsPdf(html);
    //Save the file
    PDF.SaveAs("E:/sample.pdf");
}
/**
HTML String to PDF
anchor-html-string-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new ChromePdfRenderer();
    //HTML Source
    string html = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> ";
    //convert HTML string to PDF file
    using var PDF = converter.RenderHtmlAsPdf(html);
    //Save the file
    PDF.SaveAs("E:/sample.pdf");
}
'''
'''HTML String to PDF
'''anchor-html-string-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
	'create rendering converter
	Dim converter = New ChromePdfRenderer()
	'HTML Source
	Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to IronPDF</h2> "
	'convert HTML string to PDF file
	Dim PDF = converter.RenderHtmlAsPdf(html)
	'Save the file
	PDF.SaveAs("E:/sample.pdf")
End Sub
$vbLabelText   $csharpLabel

Sortie :

Le code ci-dessus créera un fichier PDF sample.pdf dans Disque local E: et sa capture d'écran est :

Iron1 related to 3.1. Chaîne HTML avec IronPDF

3.2. Chaîne HTML avec ActivePDF

using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //HTML Source
    string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
    //assign source html to WebGrabber
    wg.CreateFromHTMLText = html;
    //specify file directory
    wg.OutputDirectory = "E:/";
    // file name
    wg.NewDocumentName = "sample.pdf";
    //convert source HTML to PDF file
    wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //HTML Source
    string html = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>";
    //assign source html to WebGrabber
    wg.CreateFromHTMLText = html;
    //specify file directory
    wg.OutputDirectory = "E:/";
    // file name
    wg.NewDocumentName = "sample.pdf";
    //convert source HTML to PDF file
    wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
	'Instantiate Object
	Dim wg As New WebGrabber()
	'HTML Source
	Dim html As String = "<h1>Hello World!</h1> <h2>Welcome to ActivePDF WebGrabber</h2>"
	'assign source html to WebGrabber
	wg.CreateFromHTMLText = html
	'specify file directory
	wg.OutputDirectory = "E:/"
	' file name
	wg.NewDocumentName = "sample.pdf"
	'convert source HTML to PDF file
	wg.ConvertToPDF()
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est le fichier sample.pdf nouvellement généré à partir de ce code :

Active1 related to 3.2. Chaîne HTML avec ActivePDF

3.3. Différence entre IronPDF et ActivePDF

  • Moins de lignes de code avec IronPDF
  • Le fichier généré par IronPDF est plus lisible, grâce aux marges par défaut

4. Convertir un fichier HTML en fichier PDF

Dans cette comparaison, nous prenons le cas d'utilisation où nous devons générer un fichier PDF à partir d'un fichier HTML nommé myHtmlFile.html qui se trouve dans le répertoire E:/, et il contient le code HTML et CSS suivant :

<html>
  <style>
        li{
            font-size:x-large;
            color: magenta;
            font-style: italic;
            }
  </style>
<body>
    <h1>I am Heading</h1>
    <h2>Items List:</h2>
    <ul>
        <li>Item1</li>
        <li>Item2</li>
        <li>Item3</li>
        <li>Item4</li>
    </ul>
</body>
</html>
<html>
  <style>
        li{
            font-size:x-large;
            color: magenta;
            font-style: italic;
            }
  </style>
<body>
    <h1>I am Heading</h1>
    <h2>Items List:</h2>
    <ul>
        <li>Item1</li>
        <li>Item2</li>
        <li>Item3</li>
        <li>Item4</li>
    </ul>
</body>
</html>
HTML

Maintenant, nous allons convertir le fichier myHtmlFile.html en un fichier PDF en utilisant les deux composants. Commençons par IronPDF.

4.1. Fichier HTML avec IronPDF

/**
HTML File to PDF
anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new IronPdf.ChromePdfRenderer();
    //render html file to pdf
    using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
    //save to target location
    PDF.SaveAs("E:/Sample.pdf");
}
/**
HTML File to PDF
anchor-html-file-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new IronPdf.ChromePdfRenderer();
    //render html file to pdf
    using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
    //save to target location
    PDF.SaveAs("E:/Sample.pdf");
}
'''
'''HTML File to PDF
'''anchor-html-file-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
	'create rendering converter
	Dim converter = New IronPdf.ChromePdfRenderer()
	'render html file to pdf
	Dim PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html")
	'save to target location
	PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est celle du fichier Sample.pdf nouvellement généré en utilisant le code ci-dessus :

Iron2 related to 4.1. Fichier HTML avec IronPDF

Nous pouvons voir que la page HTML myHtmlFile.html a été convertie avec succès en fichier PDF Sample.pdf, et que les styles CSS sont également appliqués.

Lisez la documentation IronPDF pour en savoir plus sur la façon dont nous pouvons utiliser IronPDF dans notre projet .NET.

Effectuons la même tâche en utilisant ActivePDF WebGrabber.

4.2. Fichier HTML avec ActivePDF

using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //specify file path to be converted
    wg.URL = "E:/myHtmlFile.html";
    //specify the directory for newly generated file
    wg.OutputDirectory = "E:/";
    //newly generated file name
    wg.NewDocumentName = "Sample.pdf";
    //convert HTML file to PDF
    wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //specify file path to be converted
    wg.URL = "E:/myHtmlFile.html";
    //specify the directory for newly generated file
    wg.OutputDirectory = "E:/";
    //newly generated file name
    wg.NewDocumentName = "Sample.pdf";
    //convert HTML file to PDF
    wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
	'Instantiate Object
	Dim wg As New WebGrabber()
	'specify file path to be converted
	wg.URL = "E:/myHtmlFile.html"
	'specify the directory for newly generated file
	wg.OutputDirectory = "E:/"
	'newly generated file name
	wg.NewDocumentName = "Sample.pdf"
	'convert HTML file to PDF
	wg.ConvertToPDF()
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier nouvellement généré Sample.pdf, en utilisant le code ci-dessus :

Active2 related to 4.2. Fichier HTML avec ActivePDF

4.3. Différence entre IronPDF et ActivePDF

  • Seulement 3 lignes de code avec IronPDF
  • Le fichier IronPDF est légèrement plus propre / attrayant

5. Convertir une URL en fichier PDF

Supposons que nous ayons une URL https://yandex.com/ et que nous souhaitions générer un fichier PDF de sa page web. Pour ce faire, les deux composants fournissent une fonction. Tout d'abord, nous verrons comment IronPDF peut le faire.

5.1. URL avec IronPDF

/**
URL to PDF
anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new ChromePdfRenderer();
    //Specify URL
    using var PDF = converter.RenderUrlAsPdf("https://yandex.com/");
    //Save the file
    PDF.SaveAs("E:/Sample.pdf");
}
/**
URL to PDF
anchor-url-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new ChromePdfRenderer();
    //Specify URL
    using var PDF = converter.RenderUrlAsPdf("https://yandex.com/");
    //Save the file
    PDF.SaveAs("E:/Sample.pdf");
}
'''
'''URL to PDF
'''anchor-url-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
	'create rendering converter
	Dim converter = New ChromePdfRenderer()
	'Specify URL
	Dim PDF = converter.RenderUrlAsPdf("https://yandex.com/")
	'Save the file
	PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré par le code ci-dessus

Iron3 related to 5.1. URL avec IronPDF

Vous pouvez visiter la page web de l'échantillon d'URL pour comparer et voir à quel point le fichier IronPDF correspond précisément.

Nous allons maintenant effectuer la même tâche en utilisant ActivePDF WebGrabber.

5.2. URL avec ActivePDF

using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //specify URL 
    wg.URL = "https://yandex.com/";
    //specify the directory for newly generated file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert specified URL webpage to PDF
    wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //specify URL 
    wg.URL = "https://yandex.com/";
    //specify the directory for newly generated file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert specified URL webpage to PDF
    wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
	'Instantiate Object
	Dim wg As New WebGrabber()
	'specify URL 
	wg.URL = "https://yandex.com/"
	'specify the directory for newly generated file
	wg.OutputDirectory = "E:/"
	'specify file name
	wg.NewDocumentName = "Sample.pdf"
	'convert specified URL webpage to PDF
	wg.ConvertToPDF()
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré par le code ci-dessus :

Active3 related to 5.2. URL avec ActivePDF

5.3. Différence entre IronPDF et ActivePDF

  • IronPDF a une structure plus simple pour générer des fichiers PDF
  • Seulement trois lignes de code
  • IronPDF se rapproche du site

6. Créer un filigrane sur un PDF

Dans cette comparaison, nous allons créer un fichier PDF à l'aide d'une chaîne HTML, puis ajouter un WaterMark au centre de la page. Commençons par IronPDF.

6.1. Filigrane avec IronPDF

IronPDF fournit la fonction suivante pour ajouter un WaterMark :

WatermarkPage(WaterMark HTML String, PageIndexToWaterMark, WaterMarkLocation, Opacity, Rotation, Hyperlink)

Nous pouvons utiliser le WaterMarkLocation pour définir le filigrane aux positions suivantes :

  • En haut à gauche

  • TopCenter

  • En haut à droite

  • MilieuGauche

  • MilieuCentre

  • MilieuDroite

  • En bas à gauche

  • CentreBas

  • EnBasÀDroite

    Voyons comment utiliser les fonctions ci-dessus pour définir le WaterMark :

/**
Watermark PDF
anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new ChromePdfRenderer();
    //source html string
    string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
    //add above string as PDF file content
    using var PDF = converter.RenderHtmlAsPdf(html);
    //HTML string for WaterMark
    string WMStr = "<h1 style='color:red'>WaterMark</h1>";
    //add WaterMark
    PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "");
    //save the document
    PDF.SaveAs("E:/Sample.pdf");
}
/**
Watermark PDF
anchor-watermark-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create rendering converter
    var converter = new ChromePdfRenderer();
    //source html string
    string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
    //add above string as PDF file content
    using var PDF = converter.RenderHtmlAsPdf(html);
    //HTML string for WaterMark
    string WMStr = "<h1 style='color:red'>WaterMark</h1>";
    //add WaterMark
    PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "");
    //save the document
    PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Watermark PDF
'''anchor-watermark-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
	'create rendering converter
	Dim converter = New ChromePdfRenderer()
	'source html string
	Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
	'add above string as PDF file content
	Dim PDF = converter.RenderHtmlAsPdf(html)
	'HTML string for WaterMark
	Dim WMStr As String = "<h1 style='color:red'>WaterMark</h1>"
	'add WaterMark
	PDF.WatermarkPage(WMStr, 0, PdfDocument.WaterMarkLocation.MiddleCenter, 100, -45, "")
	'save the document
	PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré par le code ci-dessus :

Iron4 related to 6.1. Filigrane avec IronPDF

Nous pouvons ajouter n'importe quel type de WaterMark et définir ses propriétés par CSS. Nous allons maintenant effectuer la même tâche en utilisant ActivePDF WebGrabber.

6.2. Filigrane avec ActivePDF

ActivePDF WebGrabber ne fournit pas de fonction spécifique pour WaterMark, contrairement à IronPDF. Mais nous pouvons utiliser la fonction AddStampText() comme solution de contournement à cette fin :

AddStampText(float x, float y, string stampText);

  • float x pour définir la coordonnée x pour l'origine du nouveau TextStamp.
  • float y pour définir la coordonnée y pour l'origine du nouveau TextStamp.
  • stampText est le texte réel du TextStamp.

    Remarque : ActivePDF WebGrabber ne prend pas en charge le style CSS pour TextStamp. Nous devons le configurer par d'autres fonctions fournies comme suit :

using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //HTML source for Page content
    string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
    //assign page content source
    wg.CreateFromHTMLText = html;
    //add text stamp as WaterMark
    wg.AddStampText(270.0f, 350.0f, "WaterMark");
    //specify WaterMark's font size
    wg.StampFontSize = 20;
    //specify WaterMark's font family
    wg.StampFont = "Times New Roman";
    //specify WaterMark's opacity
    wg.StampFontTransparency = 1f;
    //specify WaterMark's rotation
    wg.StampRotation = 45.0f;
    //specify WaterMark's color
    wg.StampColorNET = new ADK.PDF.Color() { Red = 255, Green = 0, Blue = 0, Gray = 0 };
    //specify directory for newly created file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert above sources to PDF file
    wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //HTML source for Page content
    string html = "<h1 style='text-align:center'>WaterMark Example</h1>";
    //assign page content source
    wg.CreateFromHTMLText = html;
    //add text stamp as WaterMark
    wg.AddStampText(270.0f, 350.0f, "WaterMark");
    //specify WaterMark's font size
    wg.StampFontSize = 20;
    //specify WaterMark's font family
    wg.StampFont = "Times New Roman";
    //specify WaterMark's opacity
    wg.StampFontTransparency = 1f;
    //specify WaterMark's rotation
    wg.StampRotation = 45.0f;
    //specify WaterMark's color
    wg.StampColorNET = new ADK.PDF.Color() { Red = 255, Green = 0, Blue = 0, Gray = 0 };
    //specify directory for newly created file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert above sources to PDF file
    wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
	'Instantiate Object
	Dim wg As New WebGrabber()
	'HTML source for Page content
	Dim html As String = "<h1 style='text-align:center'>WaterMark Example</h1>"
	'assign page content source
	wg.CreateFromHTMLText = html
	'add text stamp as WaterMark
	wg.AddStampText(270.0F, 350.0F, "WaterMark")
	'specify WaterMark's font size
	wg.StampFontSize = 20
	'specify WaterMark's font family
	wg.StampFont = "Times New Roman"
	'specify WaterMark's opacity
	wg.StampFontTransparency = 1F
	'specify WaterMark's rotation
	wg.StampRotation = 45.0F
	'specify WaterMark's color
	wg.StampColorNET = New ADK.PDF.Color() With {
		.Red = 255,
		.Green = 0,
		.Blue = 0,
		.Gray = 0
	}
	'specify directory for newly created file
	wg.OutputDirectory = "E:/"
	'specify file name
	wg.NewDocumentName = "Sample.pdf"
	'convert above sources to PDF file
	wg.ConvertToPDF()
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré.

Active4 related to 6.2. Filigrane avec ActivePDF

6.3. Différence entre IronPDF et ActivePDF

  • IronPDF permet d'ajouter un filigrane en toute simplicité
  • IronPDF fournit des fonctions directes pour définir les propriétés du filigrane
  • ActivePDF WebGrabber a une structure de programmation complexe avec de nombreuses lignes de code à contourner

7. Définir les marges d'une page PDF

Supposons que nous ayons une simple page web nommée myHtmlFile.html dans notre Disque local E, qui a une largeur de 100% et une bordure de couleur noire. Nous allons générer un fichier PDF à partir de celui-ci et définir la marge de page. Commençons par IronPDF.

7.1. Les marges avec IronPDF

Pour définir les marges, IronPDF propose la classe ChromePdfRenderOptions, qui possède les propriétés suivantes :

  • MarginLeft pour définir la marge du côté gauche de la page.
  • MarginRight pour définir la marge depuis le côté droit de la page.
  • MarginTop pour définir la marge depuis le haut de la page.
  • MarginBottom pour définir une marge depuis le bas de la page.

    Note : Par défaut, IronPDF définit une marge de 20 mm à gauche, en haut, à droite et en bas pour rendre la page plus lisible. Nous pouvons la définir à 0mm si nous n'en avons pas besoin.

/**
Set Margins
anchor-margins-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create html to PDF converter
    var converter = new ChromePdfRenderer();
    //specify left Margin
    converter.RenderingOptions.MarginLeft = 50;
    //specify top Margin
    converter.RenderingOptions.MarginTop = 40;
    //render html file to PDF
    using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
    //save to the target location
    PDF.SaveAs("E:/Sample.pdf");
}
/**
Set Margins
anchor-margins-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create html to PDF converter
    var converter = new ChromePdfRenderer();
    //specify left Margin
    converter.RenderingOptions.MarginLeft = 50;
    //specify top Margin
    converter.RenderingOptions.MarginTop = 40;
    //render html file to PDF
    using var PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html");
    //save to the target location
    PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Set Margins
'''anchor-margins-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
	'create html to PDF converter
	Dim converter = New ChromePdfRenderer()
	'specify left Margin
	converter.RenderingOptions.MarginLeft = 50
	'specify top Margin
	converter.RenderingOptions.MarginTop = 40
	'render html file to PDF
	Dim PDF = converter.RenderHTMLFileAsPdf("E:/myHtmlFile.html")
	'save to the target location
	PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré par le code ci-dessus :

Iron5 related to 7.1. Les marges avec IronPDF

Il peut être observé que la page PDF a 50mm depuis le côté gauche, 40 depuis le haut, et la marge du côté gauche est de 20mm qui est par défaut. Nous pouvons voir à quel point il est simple de définir la marge de n'importe quel côté en utilisant la classe ChromePdfRenderOptions de IronPDF.

En savoir plus sur les Paramètres de génération de PDF pour plus de détails : comment travailler avec les marges et d'autres propriétés du fichier PDF.

Nous allons maintenant définir la marge de la page en utilisant ActivePDF WebGrabber.

7.2. Marges avec ActivePDF

Pour définir les marges de page, ActivePDF WebGrabber fournit la fonction SetMargins(), et nous pouvons l'utiliser comme suit :

SetMargins(Marge supérieure, Marge inférieure, Marge gauche, Marge droite)

Nous utiliserons cette fonction pour définir la marge de la page :

using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber()
    //specify source HTML file path
    wg.URL = "E:/myHtmlFile.html";
    //Margins
    wg.SetMargins(1, 0, 1.5f, 0);
    //specify directory for newly created file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert HTML file to PDF
    wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber()
    //specify source HTML file path
    wg.URL = "E:/myHtmlFile.html";
    //Margins
    wg.SetMargins(1, 0, 1.5f, 0);
    //specify directory for newly created file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert HTML file to PDF
    wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
	'Instantiate Object
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: WebGrabber wg = new WebGrabber() wg.URL = "E:/myHtmlFile.html";
	New WebGrabber() wg.URL = "E:/myHtmlFile.html"
	Dim wg As New WebGrabber() wg.URL
	'Margins
	wg.SetMargins(1, 0, 1.5F, 0)
	'specify directory for newly created file
	wg.OutputDirectory = "E:/"
	'specify file name
	wg.NewDocumentName = "Sample.pdf"
	'convert HTML file to PDF
	wg.ConvertToPDF()
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré par le code ci-dessus :

Active5 related to 7.2. Marges avec ActivePDF

Nous pouvons voir que la page PDF a une marge de 1.5f du côté gauche et de 1f du haut. En utilisant les deux composants, nous pouvons facilement définir les marges de la page selon nos besoins.

En savoir plus sur la façon de définir les marges avec ActivePDF.


8. Définir l'en-tête et le pied de page des PDF

Dans cette comparaison, nous verrons comment définir l'en-tête et le pied de page d'un fichier PDF. Nous utiliserons les fonctions et les techniques fournies par les deux composants, grâce auxquelles nous pourrons imprimer des en-têtes et des pieds de page personnalisés sur les pages PDF de manière programmatique.

8.1. En-têtes et pieds de page avec IronPDF

IronPDF fournit les propriétés suivantes, qui peuvent être utilisées pour définir les en-têtes et les pieds de page :

  • LeftText : définit le texte de l'en-tête ou du pied de page sur le côté gauche.
  • CenterText : imprime le texte d'en-tête ou de pied de page au centre.
  • RightText : définit le texte de l'en-tête ou du pied de page sur le côté gauche.
  • FontFamily : définit la famille de polices du texte de l'en-tête ou du pied de page.
  • FontSize : définit la taille de la police du texte de l'en-tête ou du pied de page.
  • Espacement : définit l'espace entre le contenu de la page et l'en-tête ou le pied de page.
  • DrawDividerLine : il trace une ligne horizontale qui sépare le contenu de la page de l'en-tête ou du pied de page.

    Nous pouvons utiliser les fonctions prédéfinies suivantes de IronPDF entre accolades {} pour l'en-tête ou le pied de page :

  • {page} il imprime le numéro de page actuel.
  • {total-pages} est utilisé pour imprimer le nombre total de pages d'un PDF.
  • {url} est utilisé pour imprimer l'URL du PDF rendu.
  • {date} est utilisé pour imprimer la date d'aujourd'hui.
  • {time} il affiche l'heure actuelle.
  • {html-title} il est utilisé pour imprimer le titre du fichier HTML rendu.
  • {pdf-title} définit le titre du document.

    Examinons l'exemple suivant, dans lequel nous allons définir l'en-tête et le pied de page à l'aide des fonctions ci-dessus :

/**
Set Header Footers
anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create html to PDF converter
    var converter = new IronPdf.ChromePdfRenderer();
    //Page Content source
    string html = "<h1 style='text-align:center;'>Page Content</h2>";
    //Assign source to converter
    using var PDF = converter.RenderHtmlAsPdf(html);
    //Add Header settings
    converter.RenderingOptions.TextHeader = new TextHeaderFooter()
    {
        LeftText = "Header Text",
        RightText = "{date} {time}",
        DrawDividerLine=true,
        FontSize=13
    };
    //Add Footer settings
    converter.RenderingOptions.TextFooter = new TextHeaderFooter()
    {
        RightText = "Page {page} of {total-pages}",
        FontSize = 12
    };
    //save to target location
    PDF.SaveAs("E:/Sample.pdf");
}
/**
Set Header Footers
anchor-headers-and-footers-with-ironpdf
**/
using IronPdf;
static void Main(string [] args)
{
    //create html to PDF converter
    var converter = new IronPdf.ChromePdfRenderer();
    //Page Content source
    string html = "<h1 style='text-align:center;'>Page Content</h2>";
    //Assign source to converter
    using var PDF = converter.RenderHtmlAsPdf(html);
    //Add Header settings
    converter.RenderingOptions.TextHeader = new TextHeaderFooter()
    {
        LeftText = "Header Text",
        RightText = "{date} {time}",
        DrawDividerLine=true,
        FontSize=13
    };
    //Add Footer settings
    converter.RenderingOptions.TextFooter = new TextHeaderFooter()
    {
        RightText = "Page {page} of {total-pages}",
        FontSize = 12
    };
    //save to target location
    PDF.SaveAs("E:/Sample.pdf");
}
'''
'''Set Header Footers
'''anchor-headers-and-footers-with-ironpdf
'''*
Imports IronPdf
Shared Sub Main(ByVal args() As String)
	'create html to PDF converter
	Dim converter = New IronPdf.ChromePdfRenderer()
	'Page Content source
	Dim html As String = "<h1 style='text-align:center;'>Page Content</h2>"
	'Assign source to converter
	Dim PDF = converter.RenderHtmlAsPdf(html)
	'Add Header settings
	converter.RenderingOptions.TextHeader = New TextHeaderFooter() With {
		.LeftText = "Header Text",
		.RightText = "{date} {time}",
		.DrawDividerLine=True,
		.FontSize=13
	}
	'Add Footer settings
	converter.RenderingOptions.TextFooter = New TextHeaderFooter() With {
		.RightText = "Page {page} of {total-pages}",
		.FontSize = 12
	}
	'save to target location
	PDF.SaveAs("E:/Sample.pdf")
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré par le code ci-dessus :

Iron6 related to 8.1. En-têtes et pieds de page avec IronPDF

Nous constatons que

  • Le texte d'en-tête est imprimé sur le côté gauche de l'en-tête.
  • DateTime est imprimé sur le côté droit de l'en-tête.
  • Une ligne horizontale est tracée pour séparer l'en-tête du contenu de la page.
  • Page CurrentPage sur TotalPages du côté droit du pied de page.

    En savoir plus sur la configuration des propriétés HTML vers PDF en utilisant IronPDF.

    Utilisons maintenant ActivePDF WebGrabber pour définir les en-têtes et les pieds de page :

8.2. En-têtes et pieds de page avec ActivePDF

ActivePDF WebGrabber fournit les propriétés HeaderHTML et FooterHTML pour définir respectivement l'en-tête et le pied de page. Le code HTML brut est transmis à ces propriétés en tant qu'en-tête ou pied de page. Contrairement à IronPDF, ActivePDF WebGrabber ne fournit pas de fonctions prédéfinies pour définir l'alignement de l'en-tête et du pied de page, nous devons donc le faire en utilisant les propriétés HTML et CSS comme suit :

using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //Page content source
    string html = @"<h1 style='text-align:center;'>Page Content</h2>";
    //assign above source to WebGrabber
    wg.CreateFromHTMLText = html;
    //specify Footer height
    wg.FooterHeight = 0.5f;
    //Add Footer setting
    wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
    //create object for datetime
    DateTime now = DateTime.Now;
    //specify header height
    wg.HeaderHeight = 0.5f;
    //Add Header setting
    wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
    //append Header settings
    wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>";
    //specify directory for newly created file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert above sources to PDF file
    wg.ConvertToPDF();
}
using APWebGrabber;
static void Main(string [] args)
{
    //Instantiate Object
    WebGrabber wg = new WebGrabber();
    //Page content source
    string html = @"<h1 style='text-align:center;'>Page Content</h2>";
    //assign above source to WebGrabber
    wg.CreateFromHTMLText = html;
    //specify Footer height
    wg.FooterHeight = 0.5f;
    //Add Footer setting
    wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>";
    //create object for datetime
    DateTime now = DateTime.Now;
    //specify header height
    wg.HeaderHeight = 0.5f;
    //Add Header setting
    wg.HeaderHTML = "<div style='float: left;'>Header Text</div>";
    //append Header settings
    wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>";
    //specify directory for newly created file
    wg.OutputDirectory = "E:/";
    //specify file name
    wg.NewDocumentName = "Sample.pdf";
    //convert above sources to PDF file
    wg.ConvertToPDF();
}
Imports APWebGrabber
Shared Sub Main(ByVal args() As String)
	'Instantiate Object
	Dim wg As New WebGrabber()
	'Page content source
	Dim html As String = "<h1 style='text-align:center;'>Page Content</h2>"
	'assign above source to WebGrabber
	wg.CreateFromHTMLText = html
	'specify Footer height
	wg.FooterHeight = 0.5F
	'Add Footer setting
	wg.FooterHTML = "<div style='text-align: right;'>%cp% of %tp%</div>"
	'create object for datetime
	Dim now As DateTime = DateTime.Now
	'specify header height
	wg.HeaderHeight = 0.5F
	'Add Header setting
	wg.HeaderHTML = "<div style='float: left;'>Header Text</div>"
	'append Header settings
	wg.HeaderHTML = $"<div style='float: right;'>{DateTime.Now.ToShortDateString()} {DateTime.Now.ToShortTimeString()}</div>"
	'specify directory for newly created file
	wg.OutputDirectory = "E:/"
	'specify file name
	wg.NewDocumentName = "Sample.pdf"
	'convert above sources to PDF file
	wg.ConvertToPDF()
End Sub
$vbLabelText   $csharpLabel

La capture d'écran suivante est du fichier Sample.pdf nouvellement généré à partir du code ci-dessus :

Active6 related to 8.2. En-têtes et pieds de page avec ActivePDF

En savoir plus sur comment configurer les en-têtes et pieds de page avec ActivePDF WebGrabber.

8.3. Différence entre IronPDF et ActivePDF

  • ActivePDF WebGrabber n'a pas de fonction prédéfinie pour dessiner une ligne horizontale qui sépare l'en-tête du contenu de la page
  • ActivePDF nécessite l'utilisation de la fonction DateTime du framework .NET
  • IronPDF permet de définir simplement les propriétés de l'en-tête et du pied de page

9. Liste des composants ActivePDF

NameDetail
ActivePDF DocConverterIt is used to convert popular file types to and from PDF format.
ActivePDF WebGrabberIt grabs the HTML from many sources and converts it to PDF files.
ActivePDF DocSpaceIt provides Batch Process Automation, and a user interface for display, generate, converting, manipulating, and interacting with PDF and other file formats.
ActivePDF ToolkitIt is used to create, modify, view, extract, manipulate, and automate the document content to and from PDF files.
ActivePDF PortalIt enables the users to view and modify PDF documents from any source in a standard web browser.
ActivePDF CADConverterIt is used to convert CAD files into PDF.
ActivePDF XtractorIt is used to extract and find the text and images from PDF files.
ActivePDF SpoolerIt allows the developer to print the PDF file page on paper.
ActivePDF RedactorIt is used to hide sensitive information from the viewer.
ActivePDF ServerIt provides the printing solution for different purposes.

10. Licences

ActivePDF ne fournit aucune information sur leurs packages sur leur site web ActivePDF. Pour obtenir des informations sur les licences, vous devez contacter leur représentant commercial. Cependant, vous devez savoir exactement quel type de licence de production vous recherchez. Elle ne fournit pas de liste de prix et, bien que les prix commencent à 1 180 dollars pour une licence annuelle, ils peuvent être plus élevés en fonction de l'étendue de l'utilisation et doivent être détaillés afin d'obtenir un devis.

IronPDF propose une tarification transparente avec des licences à partir de $749, avec de nombreuses options personnalisables. Contactez l'équipe si vous avez des questions.


Tutoriel Accès rapide

Explorer la référence de l'API IronPDF

Explorez la référence API de la bibliothèque C# d'IronPDF, y compris les détails de toutes les fonctionnalités, classes, champs de méthodes, espaces de noms et enums d'IronPDF.

Voir la Référence de l'API
Documentation related to Tutoriel Accès rapide
Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.
< PRÉCÉDENT
Tutoriel et comparaison d'Aspose PDF Converter
SUIVANT >
SpirePDF C# HTML to PDF Tutoriel et comparaison des bibliothèques