Passer au contenu du pied de page
COMPARAISONS DE PRODUITS

Une Comparaison entre IronPDF et XFINIUM.PDF

La technologie en constante amélioration signifie des solutions plus intelligentes pour tout le monde, en particulier les développeurs. L'automatisation est désormais la clé des processus de développement logiciel. Travailler avec des fichiers PDF en C# a été problématique pour les développeurs pendant de nombreuses années. De nombreux facteurs doivent être pris en compte lors de la création de contenu pour les fichiers PDF, et encore plus lors de la conversion de contenu de différents formats en PDF. Ces problèmes ont maintenant été résolus avec la construction de multiples bibliothèques conçues pour aider à lire, écrire, créer et convertir en PDF à partir de différents formats.

Cet article comparera deux des bibliothèques PDF les plus populaires pour les développeurs .NET et .NET Core. Ces deux bibliothèques sont :

  • La bibliothèque IronPDF
  • La bibliothèque XFININIUM.PDF

IronPDF et XFINIUM.PDF sont deux bibliothèques qui fournissent des méthodes pour créer, manipuler et imprimer des PDF dans .NET et .NET Core. La prochaine question est de décider quelle bibliothèque PDF C# est la meilleure pour votre projet .NET. Vous pouvez peser votre décision en lisant la comparaison suivante entre les deux bibliothèques et leurs fonctionnalités exceptionnelles respectives pour la conversion et la manipulation de PDF.

Tout d'abord, examinons ce que les deux bibliothèques ont à offrir, puis passons à la comparaison elle-même.

La bibliothèque XFINIUM.PDF et ses fonctionnalités

La bibliothèque XFINIUM.PDF est une bibliothèque multiplateforme pour le développement de PDF. Elle offre une large gamme de capacités à la fois pour le développeur PDF amateur et confirmé. Que vous souhaitiez créer un rapport, remplir un formulaire PDF, construire un portfolio PDF, expurger des données sensibles d'un rapport PDF ou convertir un rapport PDF en une image TIFF multipage.

XFINIUM.PDF est disponible en deux éditions : l'édition Générateur, qui inclut la production et l'édition de PDF, et l'édition Visualiseur, qui contient toute la fonctionnalité de l'édition Générateur plus le rendu et la visualisation de PDF. La section Fonctionnalités explique quelles fonctionnalités sont incluses dans les deux éditions, et lesquelles sont uniquement disponibles dans l'édition Visualiseur.

XFINIUM.PDF a été entièrement écrit en C# et est un code entièrement géré. Il est licencié par développeur avec une distribution sans redevance, ce qui vous permet de distribuer librement votre programme sans encourir de coûts supplémentaires.

Quelle est la différence entre les éditions Générateur et Visualiseur ?

L'édition Générateur est un sous-ensemble de l'édition Visualiseur. L'édition Générateur offre des fonctionnalités PDF pour créer et éditer des PDF, tandis que l'édition Visualiseur ajoute des capacités de rendu PDF à l'édition Générateur. L'édition Visualiseur peut convertir des pages PDF en images RAW, BMP, GIF, JPG, PNG et TIFF.

Spécification de XFINIUM.PDF

Certaines des fonctionnalités importantes incluent :

Sécurité

  • Mots de passe utilisateur et propriétaire
  • Droits d'accès au document
  • Chiffrement RC4 40-bit et 128-bit
  • Chiffrement AES 128-bit et 256-bit
  • Action de contenu
  • Désactivation de la copie/colle de texte

Signatures numériques

  • Approbation et certification des signatures numériques avec certificats X509
  • Signatures numériques CMS et PAdES de base avec SHA256 / SHA384 / SHA512
  • Horodatages des signatures
  • Informations OCSP et CRL incluses dans les signatures numériques
  • Magasin de sécurité de document
  • Horodatages de document
  • Signatures numériques avec validation à long terme (LTV)
  • Décoder les signatures existantes en objets ASN.1
  • Extraire le certificat des signatures numériques
  • Enregistrer des copies signées de documents PDF

Code-barres

  • Moteur de code-barres vectoriel intégré, pas d'images de code-barres ou de polices de code-barres
  • Codes-barres unidimensionnels :
    • Codes-barres génériques : Codabar, Code 11, Code 25, Code 25 Interleaved, Code 39, Code 39 Étendu, Code 93, Code 93 Étendu, Code 128 A, Code 128 B, Code 128 C, COOP 25, Matrix 25, MSI/Plessey
    • Codes-barres pharmaceutiques : Code 32, Pharmacode, PZN (Pharma-Zentral-Nummer)
  • Codes-barres bidimensionnels :
    • DataMatrix, QR, PDF417, Micro PDF417, Codablock F, Code 16K

Extraction de contenu

  • Extraire du texte avec des informations de position au niveau de fragment et de glyphe
  • Extraire du texte sous forme de mots avec des informations de position au niveau de mot et de glyphe
  • Extraire du texte et des mots à partir de régions définies par l'utilisateur
  • Extraire des images y compris des informations sur l'image telles que la taille en pixels, bits par pixel, espace colorimétrique, position de l'image sur la page PDF, taille de l'image sur la page PDF, résolution horizontale et verticale de l'image

API COS de bas niveau

  • Ajouter, éditer et supprimer des objets COS
  • Objets COS pris en charge : chaînes, nombres, noms, booléens, null, tableaux, dictionnaires et flux

Rendu PDF (édition Visualiseur seulement)

  • Rendre des pages PDF en images : RAW, BMP, GIF, JPG, PNG et TIFF ARGB, RGBA, BGRA, RGB, BGR, et des mises en page d'octets en niveau de gris pour les images RAW
  • PDF en TIFF multipage (niveau de gris/couleur/CCITT G4 B&W)

Les caractéristiques principales d'IronPDF

La bibliothèque PDF .NET d'IronPDF est un rêve devenu réalité pour les développeurs, en particulier les programmeurs C#. Avec cet outil incroyable, vous pouvez facilement construire une bibliothèque PDF de base pour .NET.

IronPDF convertit les pages HTML en fichiers PDF en utilisant le moteur Chromium .NET. Il n'est pas nécessaire d'utiliser des API compliquées pour positionner ou concevoir des PDFs avec HTML en PDF. Les documents en ligne standard sont pris en charge par IronPDF, y compris HTML, ASPX, JS, CSS et images.

Vous pouvez également utiliser HTML5, CSS, JavaScript et des images pour développer une bibliothèque PDF .NET. Un PDF peut être facilement édité, tamponné, et ajouté avec des en-têtes et pieds de page. Il facilite également la lecture du texte PDF et l'extraction de graphiques.

Téléchargez IronPDF gratuitement et commencez à l'utiliser dans vos projets .NET dès aujourd'hui.

Caractéristiques remarquables de la bibliothèque IronPDF C

Voici quelques-unes des caractéristiques clés :

Produire des PDFs (HTML en PDF)

  • HTML4/5, CSS et JavaScript peuvent tous être utilisés pour créer des documents PDF.
  • Charger une URL avec des identifiants de connexion réseau personnalisés, des agents utilisateurs, des proxys, des cookies, des en-têtes HTTP et des variables de formulaire pour permettre la connexion derrière des formulaires de connexion HTML.

Vous pouvez éditer des documents PDF existants sans Adobe Acrobat

  • Les données des champs de formulaire doivent être lues et remplies.
  • À partir d'un PDF, extraire des graphiques et du texte.
  • Toute page PDF existante peut être mise à jour avec un nouveau contenu HTML.
  • Les en-têtes et pieds de page doivent être logiques ou HTML.

Les documents PDF existants peuvent être manipulés

  • Les documents PDF existants peuvent être chargés et analysés.
  • Le contenu des documents PDF peut être fusionné et séparé.
  • Ajouter des en-têtes, pieds de page, annotations, signets, filigranes, texte et actifs d'image.

Convertir à partir d'une variété de formats de fichier

  • ASPX WebForms — convertir des formulaires web ASP.NET en PDFs imprimables qui peuvent être consultés dans le navigateur en seulement trois lignes de code.
  • Convertir HTML en PDF dans un document.
  • URL 'base' personnalisée pour permettre aux fichiers d'actifs d'être accessibles depuis n'importe où sur Internet.
  • La Vue Virtuelle permet un design réactif (largeur et hauteur).
  • Accepter les fichiers HTML encodés dans n'importe lequel des principaux formats de fichier (par défaut en UTF-8).

Imprimer et enregistrer

  • Les fichiers, données binaires et MemoryStreams peuvent tous être enregistrés et chargés.
  • Une télévision ou un écran d'ordinateur types média CSS pour l'impression.
  • Imprimer des fichiers PDF sans Adobe Acrobat en les convertissant en un objet PrintDocument (avec un code minimal).
  • Des fichiers journaux officiels contenant des informations sur le succès des API et les défauts de débogage dans le code source peuvent être exportés.

IronPDF est disponible sur presque tous les systèmes d'exploitation et cadres compatibles avec C#, y compris les suivants :

  • .NET Core 2.1, 3.0, 3.1, .NET 6 & 5
  • Conformité .NET Standard 2.0 pour une compatibilité universelle
  • Azure
  • AWS
  • Docker
  • Linux
  • Windows

Installation de la bibliothèque IronPDF C

Il existe quatre façons de télécharger et d'installer la bibliothèque IronPDF. Les voici :

  1. Utilisation de Visual Studio
  2. L'invite de commandes du développeur
  3. Télécharger le package NuGet directement
  4. Télécharger la bibliothèque .DLL IronPDF

Utiliser Visual Studio

Visual Studio fournit le gestionnaire de paquets NuGet pour installer des paquets NuGet dans vos projets. Vous pouvez y accéder via le Menu Projet, ou en cliquant avec le bouton droit sur votre projet dans l'Explorateur de solutions. Ces deux options sont montrées ci-dessous dans les captures d'écran comme Figures 1 et 2.

class="content-img-align-center"> Accéder au gestionnaire de paquets NuGet en utilisant le Menu Projet dans Visual Studio

class="content__image-caption">Figure 1. Accéder au gestionnaire de paquets NuGet en utilisant le Menu Projet dans Visual Studio

class="content-img-align-center"> Accéder au gestionnaire de paquets NuGet en utilisant le Menu Contextuel dans Visual Studio

class="content__image-caption">Figure 2. Accéder au gestionnaire de paquets NuGet en utilisant le menu contextuel dans Visual Studio

Une fois sélectionné, parcourez le package IronPDF et installez-le, comme montré sur la capture d'écran ci-dessous.

class="content-img-align-center"> Installer la bibliothèque IronPDF en utilisant le gestionnaire de paquets NuGET dans Visual Studio

class="content__image-caption">Figure 3. Installer la bibliothèque IronPDF en utilisant le gestionnaire de paquets NuGET dans Visual Studio

Utilisation de l'invite de commande du développeur

Une autre façon de télécharger et d'installer la bibliothèque IronPDF C# est d'utiliser les étapes suivantes pour installer le paquet NuGet IronPDF à travers l'invite de commande développeur.

  • Ouvrir l'Invite de Commande Développeur — généralement trouvée sous le dossier Visual Studio
  • Tapez la commande suivante :

    nuget install IronPdf
    nuget install IronPdf
    SHELL
  • Appuyez sur Entrée
  • Cela téléchargera et installera le package
  • Rechargez votre projet Visual Studio et commencez à l'utiliser

Télécharger le paquet NuGet directement

La troisième façon de télécharger et d'installer IronPDF est de suivre les étapes ci-dessous. Cela peut être fait en visitant directement le site de NuGet et en téléchargeant le paquet. Les étapes sont :

  • Naviguer vers Page NuGet IronPdf
  • Sélectionnez Télécharger le package
  • Double-cliquez sur le package téléchargé
  • Le package sera installé
  • Rechargez votre projet Visual Studio et commencez à l'utiliser

Installer IronPDF en téléchargeant la bibliothèque

Vous pouvez télécharger le fichier .DLL IronPDF directement depuis le Téléchargement de IronPDF.

class="content-img-align-center"> Télécharger la bibliothèque DLL IronPDF depuis le site web de IronPDF

class="content__image-caption">Figure 4. Télécharger la bibliothèque DLL IronPDF depuis le site web de IronPDF

Référencez la bibliothèque dans votre projet en utilisant les étapes suivantes :

  • Faites un clic droit sur la Solution dans l'Explorateur de solutions
  • Sélectionnez Références
  • Parcourez pour trouver la bibliothèque IronPDF.dll
  • Cliquez sur OK

Tout est fait ! IronPDF est téléchargé, installé et prêt à être utilisé. Cependant, avant cela, nous devrions installer l'API XFINIUM.PDF.

Installation de XFINIUM.PDF

Dans .NET Core, nous pouvons installer Xfinium PDF soit en tant qu'addin de cake soit en tant qu'outil de cake.

# Install Xfinium.Pdf.NetCore as a Cake Addin
#addin nuget:?package=Xfinium.Pdf.NetCore&version=10.2.0
# Install Xfinium.Pdf.NetCore as a Cake Addin
#addin nuget:?package=Xfinium.Pdf.NetCore&version=10.2.0
SHELL
# Install Xfinium.Pdf.NetCore as a Cake Tool
#tool nuget:?package=Xfinium.Pdf.NetCore&version=10.2.0
# Install Xfinium.Pdf.NetCore as a Cake Tool
#tool nuget:?package=Xfinium.Pdf.NetCore&version=10.2.0
SHELL

Ensuite, plongeons dans la comparaison entre IronPDF et XFINIUM.PDF.

Création d'un document PDF simple dans .NET Core

Dans le monde d'aujourd'hui, les développeurs logiciels doivent savoir comment créer un fichier PDF dynamiquement en utilisant le code C#, car cela est nécessaire dans pratiquement tous les projets. Vous pourriez avoir besoin de créer un fichier PDF pour diverses raisons, telles que générer un rapport à partir d'une saisie utilisateur, enregistrer un texte utilisateur en PDF, extraire des informations HTML et les convertir en PDF, et ainsi de suite.

La capacité de convertir une page Web HTML en PDF est incluse dans les deux bibliothèques. Analysons le code de chaque bibliothèque une par une.

Utilisation de IronPDF

IronPDF offre plusieurs méthodes pour créer des fichiers PDF.

URL existante vers PDF

IronPDF simplifie la conversion de HTML en documents PDF à partir d'URL existantes. JavaScript, les images, les formulaires, et CSS bénéficient d'un niveau élevé de support.

IronPDF est utilisé dans le code suivant pour créer un document PDF directement à partir d'une adresse de site web.

// Create an instance of the ChromePdfRenderer
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

// Render a URL to PDF
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Save the PDF
Pdf.SaveAs("url.pdf");
// Create an instance of the ChromePdfRenderer
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();

// Render a URL to PDF
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");

// Save the PDF
Pdf.SaveAs("url.pdf");
' Create an instance of the ChromePdfRenderer
Dim Renderer As New IronPdf.ChromePdfRenderer()

' Render a URL to PDF
Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")

' Save the PDF
Pdf.SaveAs("url.pdf")
$vbLabelText   $csharpLabel

Chaîne d'entrée HTML vers PDF

Le code suivant démontre comment une chaîne d'entrée HTML peut être utilisée pour rendre une page PDF. Vous pouvez utiliser uniquement du HTML, ou le combiner avec du CSS, des images et du JavaScript.

// Create an instance of the ChromePdfRenderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Render a simple HTML string to PDF
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");

// Save the PDF
PDF.SaveAs("pixel-perfect.pdf");

// Load external HTML assets: images, CSS, and javascript
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");

// Save the advanced PDF with external assets
AdvancedPDF.SaveAs("html-with-assets.pdf");
// Create an instance of the ChromePdfRenderer
var Renderer = new IronPdf.ChromePdfRenderer();

// Render a simple HTML string to PDF
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");

// Save the PDF
PDF.SaveAs("pixel-perfect.pdf");

// Load external HTML assets: images, CSS, and javascript
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");

// Save the advanced PDF with external assets
AdvancedPDF.SaveAs("html-with-assets.pdf");
' Create an instance of the ChromePdfRenderer
Dim Renderer = New IronPdf.ChromePdfRenderer()

' Render a simple HTML string to PDF
Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")

' Save the PDF
PDF.SaveAs("pixel-perfect.pdf")

' Load external HTML assets: images, CSS, and javascript
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from 
Dim AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")

' Save the advanced PDF with external assets
AdvancedPDF.SaveAs("html-with-assets.pdf")
$vbLabelText   $csharpLabel

Utilisation de XFINIUM.PDF

Utiliser XFINIUM.PDF pour créer un document PDF vierge nécessite seulement trois lignes de code : une ligne pour créer le document, une ligne pour créer une page, et une autre ligne pour enregistrer le document.

// Create a new PDF document
PdfFixedDocument document = new PdfFixedDocument();

// Add a page to the document
PdfPage page = document.Pages.Add();

// Save the document as a PDF file
document.Save("empty.pdf");
// Create a new PDF document
PdfFixedDocument document = new PdfFixedDocument();

// Add a page to the document
PdfPage page = document.Pages.Add();

// Save the document as a PDF file
document.Save("empty.pdf");
' Create a new PDF document
Dim document As New PdfFixedDocument()

' Add a page to the document
Dim page As PdfPage = document.Pages.Add()

' Save the document as a PDF file
document.Save("empty.pdf")
$vbLabelText   $csharpLabel

Trois lignes de code supplémentaires sont nécessaires pour ajouter du contenu texte au document ci-dessus : une pour la création de la police pour dessiner le texte, une pour la création de pinceau et pour définir la couleur du texte, et l'autre pour dessiner réellement du texte et des graphiques sur la page.

// Create a new PDF document
PdfFixedDocument document = new PdfFixedDocument();
PdfPage page = document.Pages.Add();

// Create a standard font with Helvetica face and 24 point size
PdfStandardFont helvetica = new PdfStandardFont(PdfStandardFontFace.Helvetica, 24);

// Create a solid RGB red brush.
PdfBrush brush = new PdfBrush(PdfRgbColor.Red);

// Draw the text on the page.
page.Graphics.DrawString("Hello World", helvetica, brush, 100, 100);

// Save the document as a PDF file
document.Save("helloworld.pdf");
// Create a new PDF document
PdfFixedDocument document = new PdfFixedDocument();
PdfPage page = document.Pages.Add();

// Create a standard font with Helvetica face and 24 point size
PdfStandardFont helvetica = new PdfStandardFont(PdfStandardFontFace.Helvetica, 24);

// Create a solid RGB red brush.
PdfBrush brush = new PdfBrush(PdfRgbColor.Red);

// Draw the text on the page.
page.Graphics.DrawString("Hello World", helvetica, brush, 100, 100);

// Save the document as a PDF file
document.Save("helloworld.pdf");
' Create a new PDF document
Dim document As New PdfFixedDocument()
Dim page As PdfPage = document.Pages.Add()

' Create a standard font with Helvetica face and 24 point size
Dim helvetica As New PdfStandardFont(PdfStandardFontFace.Helvetica, 24)

' Create a solid RGB red brush.
Dim brush As New PdfBrush(PdfRgbColor.Red)

' Draw the text on the page.
page.Graphics.DrawString("Hello World", helvetica, brush, 100, 100)

' Save the document as a PDF file
document.Save("helloworld.pdf")
$vbLabelText   $csharpLabel

Notre modèle d'objet ressemble étroitement à la norme PDF. Cela vous permet de construire facilement des abstractions complexes à son sommet, comme des documents déroulants.

Rendre les fichiers PDF générés remplissables

Utilisation de XFINIUM.PDF

La bibliothèque XFINIUM.PDF peut à la fois créer de nouveaux formulaires PDF et remplir des formulaires PDF existants.

Chaque type de champ de formulaire pris en charge dans la spécification PDF est représenté par la classe correspondante :

  • PdfTextBoxField – champs de texte
  • PdfCheckBoxField – cases à cocher
  • PdfRadioButtonField – ensembles de boutons radio
  • PdfComboboxField – boîtes de combinaison
  • PdfListboxField – boîtes de liste
  • PdfPushbuttonField – boutons poussoirs
  • PdfSignatureField – champs de signature

Le nom du champ et son emplacement sur la page sont les seules informations nécessaires pour construire un champ de formulaire. Après avoir créé l'objet champ, il doit être ajouté à la page avant que les autres attributs ne soient spécifiés.

// Create a text box field named "firstname"
PdfTextBoxField firstNameTextBox = new PdfTextBoxField("firstname");

// Add the field to a PDF page
pdfpage.Fields.Add(firstNameTextBox);

// Set the position of the field on the PDF page
firstNameTextBox.Widgets[0].VisualRectangle = new PdfVisualRectangle(150, 45, 200, 20);
// Create a text box field named "firstname"
PdfTextBoxField firstNameTextBox = new PdfTextBoxField("firstname");

// Add the field to a PDF page
pdfpage.Fields.Add(firstNameTextBox);

// Set the position of the field on the PDF page
firstNameTextBox.Widgets[0].VisualRectangle = new PdfVisualRectangle(150, 45, 200, 20);
' Create a text box field named "firstname"
Dim firstNameTextBox As New PdfTextBoxField("firstname")

' Add the field to a PDF page
pdfpage.Fields.Add(firstNameTextBox)

' Set the position of the field on the PDF page
firstNameTextBox.Widgets(0).VisualRectangle = New PdfVisualRectangle(150, 45, 200, 20)
$vbLabelText   $csharpLabel

Les formulaires PDF existants peuvent être remplis s'ils sont chargés dans un objet PdfFixedDocument. Après que le formulaire a été chargé, la collection de champs du document est automatiquement peuplée des champs définis dans le formulaire. Un champ est situé dans la collection par index ou par son nom, et il est rempli en définissant la propriété value générique définie dans la classe de base PdfField ou les propriétés spécifiques de valeur définies sur chaque type de champ.

// Load an existing PDF document with forms
PdfFixedDocument document = new PdfFixedDocument("form.pdf");

// Fill form fields with values
(document.Form.Fields["firstname"] as PdfTextBoxField).Text = "John";
(document.Form.Fields["lastname"] as PdfTextBoxField).Value = "Doe";
(document.Form.Fields["sex"].Widgets[0] as PdfRadioButtonWidget).Checked = true;
(document.Form.Fields["firstcar"] as PdfComboBoxField).SelectedIndex = 0;
(document.Form.Fields["secondcar"] as PdfListBoxField).SelectedIndex = 1;
(document.Form.Fields["agree"] as PdfCheckBoxField).Checked = true;

// Save the filled form as a new PDF file
document.Save("form_filled.pdf");
// Load an existing PDF document with forms
PdfFixedDocument document = new PdfFixedDocument("form.pdf");

// Fill form fields with values
(document.Form.Fields["firstname"] as PdfTextBoxField).Text = "John";
(document.Form.Fields["lastname"] as PdfTextBoxField).Value = "Doe";
(document.Form.Fields["sex"].Widgets[0] as PdfRadioButtonWidget).Checked = true;
(document.Form.Fields["firstcar"] as PdfComboBoxField).SelectedIndex = 0;
(document.Form.Fields["secondcar"] as PdfListBoxField).SelectedIndex = 1;
(document.Form.Fields["agree"] as PdfCheckBoxField).Checked = true;

// Save the filled form as a new PDF file
document.Save("form_filled.pdf");
' Load an existing PDF document with forms
Dim document As New PdfFixedDocument("form.pdf")

' Fill form fields with values
TryCast(document.Form.Fields("firstname"), PdfTextBoxField).Text = "John"
TryCast(document.Form.Fields("lastname"), PdfTextBoxField).Value = "Doe"
TryCast(document.Form.Fields("sex").Widgets(0), PdfRadioButtonWidget).Checked = True
TryCast(document.Form.Fields("firstcar"), PdfComboBoxField).SelectedIndex = 0
TryCast(document.Form.Fields("secondcar"), PdfListBoxField).SelectedIndex = 1
TryCast(document.Form.Fields("agree"), PdfCheckBoxField).Checked = True

' Save the filled form as a new PDF file
document.Save("form_filled.pdf")
$vbLabelText   $csharpLabel

Utilisation de IronPDF

Voyons comment nous pouvons créer des PDFs remplissables en utilisant la bibliothèque IronPDF C#.

// PM> Install-Package IronPdf
using IronPdf;

// Step 1. Creating a PDF with editable forms from HTML using form and input tags
var FormHtml = @"
<html>
    <body>
        <h2>Editable PDF Form</h2>
        <form>
          First name:<br> <input type='text' name='firstname' value=''   > <br>
          Last name:<br> <input type='text' name='lastname' value='' >
        </form>
    </body>
</html>";

// Create a PDF renderer
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// Render the HTML as a PDF and save it
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf");

// Step 2. Reading and Writing PDF form values.
var FormDocument = PdfDocument.FromFile("BasicForm.pdf");

//Set and Read the value of the "firstname" field
var FirstNameField = FormDocument.Form.FindFormField("firstname");
FirstNameField.Value = "Minnie";
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value);

//Set and Read the value of the "lastname" field
var LastNameField = FormDocument.Form.FindFormField("lastname");
LastNameField.Value = "Mouse";
Console.WriteLine("LastNameField value: {0}", LastNameField.Value);

// Save the form with filled values
FormDocument.SaveAs("FilledForm.pdf");
// PM> Install-Package IronPdf
using IronPdf;

// Step 1. Creating a PDF with editable forms from HTML using form and input tags
var FormHtml = @"
<html>
    <body>
        <h2>Editable PDF Form</h2>
        <form>
          First name:<br> <input type='text' name='firstname' value=''   > <br>
          Last name:<br> <input type='text' name='lastname' value='' >
        </form>
    </body>
</html>";

// Create a PDF renderer
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// Render the HTML as a PDF and save it
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf");

// Step 2. Reading and Writing PDF form values.
var FormDocument = PdfDocument.FromFile("BasicForm.pdf");

//Set and Read the value of the "firstname" field
var FirstNameField = FormDocument.Form.FindFormField("firstname");
FirstNameField.Value = "Minnie";
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value);

//Set and Read the value of the "lastname" field
var LastNameField = FormDocument.Form.FindFormField("lastname");
LastNameField.Value = "Mouse";
Console.WriteLine("LastNameField value: {0}", LastNameField.Value);

// Save the form with filled values
FormDocument.SaveAs("FilledForm.pdf");
' PM> Install-Package IronPdf
Imports IronPdf

' Step 1. Creating a PDF with editable forms from HTML using form and input tags
Private FormHtml = "
<html>
    <body>
        <h2>Editable PDF Form</h2>
        <form>
          First name:<br> <input type='text' name='firstname' value=''   > <br>
          Last name:<br> <input type='text' name='lastname' value='' >
        </form>
    </body>
</html>"

' Create a PDF renderer
Private Renderer As New IronPdf.ChromePdfRenderer()
Renderer.RenderingOptions.CreatePdfFormsFromHtml = True

' Render the HTML as a PDF and save it
Renderer.RenderHtmlAsPdf(FormHtml).SaveAs("BasicForm.pdf")

' Step 2. Reading and Writing PDF form values.
Dim FormDocument = PdfDocument.FromFile("BasicForm.pdf")

'Set and Read the value of the "firstname" field
Dim FirstNameField = FormDocument.Form.FindFormField("firstname")
FirstNameField.Value = "Minnie"
Console.WriteLine("FirstNameField value: {0}", FirstNameField.Value)

'Set and Read the value of the "lastname" field
Dim LastNameField = FormDocument.Form.FindFormField("lastname")
LastNameField.Value = "Mouse"
Console.WriteLine("LastNameField value: {0}", LastNameField.Value)

' Save the form with filled values
FormDocument.SaveAs("FilledForm.pdf")
$vbLabelText   $csharpLabel

Nous commençons par créer un formulaire avec des balises de formatage HTML dans le code suivant. Après cela, nous l'enregistrons en tant que document PDF. Nous commençons à lire et à écrire les valeurs des formulaires PDF à l'étape #2. Avec le nom du champ, vous pouvez accéder au champ du formulaire. La fonction FindFormField est disponible dans IronPDF. La valeur du champ sélectionné est ensuite définie, et le formulaire nouvellement rempli est enregistré.

Signature numérique des fichiers PDF

À l'ère moderne, beaucoup de gens travaillent à distance. Remplir et signer des formulaires, envoyer des fichiers et traiter des documents ne sont que quelques-unes des principales activités que les entreprises doivent accomplir au quotidien. Une telle activité principale est la signature de documents PDF, portfolios PDF et formulaires PDF comme alternatives aux documents papier. Les signatures numériques sont devenues essentielles car les entreprises cherchent des moyens de signer des accords et des contrats, ainsi que partager des formulaires PDF en ligne.

Utilisation de XFINIUM.PDF

Un champ de signature dans un fichier PDF est utilisé pour appliquer une signature numérique (classe PdfSignatureField). Bien que le champ de signature soit un champ de formulaire qui apparaît sur l'une des pages du document, la signature numérique est utilisée pour signer l'ensemble du document, pas seulement cette page.

Le processus de signature commence par la création d'un objet PdfDigitalSignature utilisé pour définir l'attribut de signature d'un champ de signature. Parce que la signature est basée sur la disposition binaire réelle du fichier PDF, elle est formée lorsque le document est enregistré.

La classe PdfDigitalSignature est la base de toutes les signatures numériques XFINIUM.

Il existe plusieurs classes de signatures à choisir :

  • PdfCmsDigitalSignature – une signature numérique basée sur la norme CMS (hérite de PdfDigitalSignature)
  • PdfPadesDigitalSignature – une signature numérique qui implémente la norme PADES (hérite de PdfCmsDigitalSignature)
  • PdfInteractiveCmsDigitalSignature – une signature numérique basée sur les normes CMS qui peut utiliser une carte à puce de signature matérielle pour créer la signature numérique (hérite de PdfDigitalSignature)
  • PdfInteractivePadesDigitalSignature – une signature numérique qui implémente la norme PADES et qui peut utiliser une carte à puce de signature matérielle pour créer la signature numérique (hérite de PdfInteractiveCmsDigitalSignature)
  • PdfDocumentTimeStamp – un horodatage de niveau document (hérite de PdfDigitalSignature)

Utilisation de IronPDF

Les développeurs demandent souvent comment utiliser IronPDF et C# pour ajouter une signature à un PDF par programmation. Cela peut signifier une variété de choses pour les développeurs :

  • À partir d'un fichier image, ajouter une image de signature numérique graphique aux fichiers PDF existants.
  • Pour confirmer qu'un PDF n'a pas été falsifié en le signant cryptographiquement.
  • Pour ajouter une icône de signature manuscrite humaine à un PDF qui a été signé cryptographiquement.

La première approche consiste à tamponner un PNG de signature dans une page PDF qui existe déjà. Il peut être utilisé comme une signature ou un tampon d'entreprise. L'opacité est encouragée. Seules quelques lignes de code sont nécessaires pour achever la procédure.

// Open an existing PDF document or create a new one
var Pdf = PdfDocument.FromFile(@"C:\Path\To\ASPX to PDF.pdf");

// Define an HTML stamp with a signature image
var SignatureStamp = new HtmlStamp()
{
    Html = "<img src='signature.png' />",
    Width = 150,
    Height = 50,
    Bottom = 300,
    Left = 85,
    ZIndex = HtmlStamp.StampLayer.OnTopOfExistingPDFContent
};

// Stamp the signature on the first page of the PDF
Pdf.StampHTML(SignatureStamp, 1);

// Save the stamped PDF
Pdf.SaveAs(@"C:\Path\To\Stamped_PDF.pdf");
// Open an existing PDF document or create a new one
var Pdf = PdfDocument.FromFile(@"C:\Path\To\ASPX to PDF.pdf");

// Define an HTML stamp with a signature image
var SignatureStamp = new HtmlStamp()
{
    Html = "<img src='signature.png' />",
    Width = 150,
    Height = 50,
    Bottom = 300,
    Left = 85,
    ZIndex = HtmlStamp.StampLayer.OnTopOfExistingPDFContent
};

// Stamp the signature on the first page of the PDF
Pdf.StampHTML(SignatureStamp, 1);

// Save the stamped PDF
Pdf.SaveAs(@"C:\Path\To\Stamped_PDF.pdf");
' Open an existing PDF document or create a new one
Dim Pdf = PdfDocument.FromFile("C:\Path\To\ASPX to PDF.pdf")

' Define an HTML stamp with a signature image
Dim SignatureStamp = New HtmlStamp() With {
	.Html = "<img src='signature.png' />",
	.Width = 150,
	.Height = 50,
	.Bottom = 300,
	.Left = 85,
	.ZIndex = HtmlStamp.StampLayer.OnTopOfExistingPDFContent
}

' Stamp the signature on the first page of the PDF
Pdf.StampHTML(SignatureStamp, 1)

' Save the stamped PDF
Pdf.SaveAs("C:\Path\To\Stamped_PDF.pdf")
$vbLabelText   $csharpLabel

Le code suivant signe cryptographiquement un PDF en utilisant un certificat numérique X509Certificate2 .pfx et .p12 qui peut être créé facilement avec une seule ligne de code.

// 123456 below represents the signature password
new IronPdf.PdfSignature("CertificateFile.p12", "123456").SignPdfFile("ASPX to PDF.pdf");
// 123456 below represents the signature password
new IronPdf.PdfSignature("CertificateFile.p12", "123456").SignPdfFile("ASPX to PDF.pdf");
' 123456 below represents the signature password
Call (New IronPdf.PdfSignature("CertificateFile.p12", "123456")).SignPdfFile("ASPX to PDF.pdf")
$vbLabelText   $csharpLabel

Cet exemple plus avancé permet de combiner la méthode de signature d'identité numérique X509Certificate2 .pfx / .p12 avec une numérisation d'une signature manuscrite.

// Create a digital signature using a certificate file
var Signature = new IronPdf.PdfSignature("Iron.pfx", "123456");

// Render a PDF document to be signed
PdfDocument doc = Renderer.RenderHtmlAsPdf("<h1>Testing 2048-bit digital security</h1>");

// Configure optional signing options and a handwritten signature graphic
Signature.SigningContact = "support@ironsoftware.com";
Signature.SigningLocation = "Chicago, USA";
Signature.SigningReason = "To show how to sign a PDF";
Signature.LoadSignatureImageFromFile("handwriting.png");

// Sign the PDF document with the digital signature
doc.SignPdfWithDigitalSignature(Signature);

// Save the signed PDF document
doc.SaveAs("Signed_ASPX_to_PDF.pdf");
// Create a digital signature using a certificate file
var Signature = new IronPdf.PdfSignature("Iron.pfx", "123456");

// Render a PDF document to be signed
PdfDocument doc = Renderer.RenderHtmlAsPdf("<h1>Testing 2048-bit digital security</h1>");

// Configure optional signing options and a handwritten signature graphic
Signature.SigningContact = "support@ironsoftware.com";
Signature.SigningLocation = "Chicago, USA";
Signature.SigningReason = "To show how to sign a PDF";
Signature.LoadSignatureImageFromFile("handwriting.png");

// Sign the PDF document with the digital signature
doc.SignPdfWithDigitalSignature(Signature);

// Save the signed PDF document
doc.SaveAs("Signed_ASPX_to_PDF.pdf");
' Create a digital signature using a certificate file
Dim Signature = New IronPdf.PdfSignature("Iron.pfx", "123456")

' Render a PDF document to be signed
Dim doc As PdfDocument = Renderer.RenderHtmlAsPdf("<h1>Testing 2048-bit digital security</h1>")

' Configure optional signing options and a handwritten signature graphic
Signature.SigningContact = "support@ironsoftware.com"
Signature.SigningLocation = "Chicago, USA"
Signature.SigningReason = "To show how to sign a PDF"
Signature.LoadSignatureImageFromFile("handwriting.png")

' Sign the PDF document with the digital signature
doc.SignPdfWithDigitalSignature(Signature)

' Save the signed PDF document
doc.SaveAs("Signed_ASPX_to_PDF.pdf")
$vbLabelText   $csharpLabel

Rendu HTML de cadre CSS moderne et Bootstrap

Les applications web modernes utilisent fréquemment des cadres CSS comme Bootstrap pour accélérer le développement de l'interface utilisateur et garantir un design réactif. Les outils de génération PDF doivent préserver avec précision ces mises en page de cadre pour maintenir la qualité professionnelle du document.

IronPDF : Support complet du cadre Bootstrap

Le moteur de rendu Chromium d'IronPDF fournit un support complet pour les cadres CSS modernes et les normes web :

  • Bootstrap 5 : Rendu complet de flexbox et de grille CSS avec tous les composants réactifs
  • Bootstrap 4 : Systèmes de cartes complets, barres de navigation, et classes utilitaires
  • Tailwind CSS : Toutes les classes orientées utilitaires et variantes réactives
  • Foundation et d'autres cadres : Le support complet de CSS3 signifie que tous les cadres modernes fonctionnent correctement
  • CSS Avancé : Flexbox, Grille CSS, propriétés personnalisées, animations, et transformations

Real-world validation: Bootstrap homepage and templates convert with browser-accurate fidelity.

Exemple de code : Horaire de l'événement avec cartes Bootstrap

using IronPdf;

var renderer = new ChromePdfRenderer();

string bootstrapSchedule = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
    <div class='container my-5'>
        <h1 class='text-center mb-5'>Tech Conference 2025 - Schedule</h1>

        <div class='row g-4'>
            <div class='col-md-6'>
                <div class='card border-primary'>
                    <div class='card-header bg-primary text-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Keynote Session</h5>
                        <span class='badge bg-light text-primary'>9:00 AM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Main Auditorium</h6>
                        <p class='card-text'><strong>The Future of AI in Software Development</strong></p>
                        <p class='card-text'>Join us for an exploration of how artificial intelligence is transforming the software development landscape.</p>
                        <div class='d-flex align-items-center'>
                            <img src='https://via.placeholder.com/50' class='rounded-circle me-2' alt='Speaker'>
                            <div>
                                <div class='fw-bold'>Dr. Sarah Chen</div>
                                <small class='text-muted'>AI Research Lead</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-6'>
                <div class='card border-success'>
                    <div class='card-header bg-success text-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Workshop</h5>
                        <span class='badge bg-light text-success'>10:30 AM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Workshop Room A</h6>
                        <p class='card-text'><strong>Hands-On: Cloud-Native Architecture</strong></p>
                        <p class='card-text'>Learn practical techniques for building scalable, cloud-native applications with modern frameworks.</p>
                        <div class='d-flex align-items-center'>
                            <img src='https://via.placeholder.com/50' class='rounded-circle me-2' alt='Speaker'>
                            <div>
                                <div class='fw-bold'>Michael Rodriguez</div>
                                <small class='text-muted'>Cloud Architect</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-6'>
                <div class='card border-warning'>
                    <div class='card-header bg-warning text-dark d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Panel Discussion</h5>
                        <span class='badge bg-dark'>2:00 PM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Main Auditorium</h6>
                        <p class='card-text'><strong>Security in Modern Web Applications</strong></p>
                        <p class='card-text'>Industry experts discuss current security challenges and best practices for protecting user data.</p>
                        <small class='text-muted'>Featuring 4 industry experts</small>
                    </div>
                </div>
            </div>

            <div class='col-md-6'>
                <div class='card border-info'>
                    <div class='card-header bg-info text-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Technical Talk</h5>
                        <span class='badge bg-light text-info'>3:30 PM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Room B</h6>
                        <p class='card-text'><strong>Performance Optimization Strategies</strong></p>
                        <p class='card-text'>Deep dive into advanced techniques for optimizing application performance and reducing latency.</p>
                        <div class='d-flex align-items-center'>
                            <img src='https://via.placeholder.com/50' class='rounded-circle me-2' alt='Speaker'>
                            <div>
                                <div class='fw-bold'>Alex Kim</div>
                                <small class='text-muted'>Performance Engineer</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapSchedule);
pdf.SaveAs("conference-schedule.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

string bootstrapSchedule = @"
<!DOCTYPE html>
<html>
<head>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
</head>
<body>
    <div class='container my-5'>
        <h1 class='text-center mb-5'>Tech Conference 2025 - Schedule</h1>

        <div class='row g-4'>
            <div class='col-md-6'>
                <div class='card border-primary'>
                    <div class='card-header bg-primary text-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Keynote Session</h5>
                        <span class='badge bg-light text-primary'>9:00 AM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Main Auditorium</h6>
                        <p class='card-text'><strong>The Future of AI in Software Development</strong></p>
                        <p class='card-text'>Join us for an exploration of how artificial intelligence is transforming the software development landscape.</p>
                        <div class='d-flex align-items-center'>
                            <img src='https://via.placeholder.com/50' class='rounded-circle me-2' alt='Speaker'>
                            <div>
                                <div class='fw-bold'>Dr. Sarah Chen</div>
                                <small class='text-muted'>AI Research Lead</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-6'>
                <div class='card border-success'>
                    <div class='card-header bg-success text-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Workshop</h5>
                        <span class='badge bg-light text-success'>10:30 AM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Workshop Room A</h6>
                        <p class='card-text'><strong>Hands-On: Cloud-Native Architecture</strong></p>
                        <p class='card-text'>Learn practical techniques for building scalable, cloud-native applications with modern frameworks.</p>
                        <div class='d-flex align-items-center'>
                            <img src='https://via.placeholder.com/50' class='rounded-circle me-2' alt='Speaker'>
                            <div>
                                <div class='fw-bold'>Michael Rodriguez</div>
                                <small class='text-muted'>Cloud Architect</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>

            <div class='col-md-6'>
                <div class='card border-warning'>
                    <div class='card-header bg-warning text-dark d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Panel Discussion</h5>
                        <span class='badge bg-dark'>2:00 PM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Main Auditorium</h6>
                        <p class='card-text'><strong>Security in Modern Web Applications</strong></p>
                        <p class='card-text'>Industry experts discuss current security challenges and best practices for protecting user data.</p>
                        <small class='text-muted'>Featuring 4 industry experts</small>
                    </div>
                </div>
            </div>

            <div class='col-md-6'>
                <div class='card border-info'>
                    <div class='card-header bg-info text-white d-flex justify-content-between align-items-center'>
                        <h5 class='mb-0'>Technical Talk</h5>
                        <span class='badge bg-light text-info'>3:30 PM</span>
                    </div>
                    <div class='card-body'>
                        <h6 class='card-subtitle mb-2 text-muted'>Room B</h6>
                        <p class='card-text'><strong>Performance Optimization Strategies</strong></p>
                        <p class='card-text'>Deep dive into advanced techniques for optimizing application performance and reducing latency.</p>
                        <div class='d-flex align-items-center'>
                            <img src='https://via.placeholder.com/50' class='rounded-circle me-2' alt='Speaker'>
                            <div>
                                <div class='fw-bold'>Alex Kim</div>
                                <small class='text-muted'>Performance Engineer</small>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(bootstrapSchedule);
pdf.SaveAs("conference-schedule.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Sortie : Un horaire de conférence professionnelle avec la grille de cartes Bootstrap, l'alignement flexbox, les composants d'insigne, et la mise en page réactive - tous rendus avec précision dans le PDF.

XFINIUM.PDF : Support limité de HTML et de cadre

XFINIUM.PDF se concentre principalement sur la génération et la manipulation de PDF plutôt que sur la conversion HTML en PDF. La bibliothèque présente des limitations importantes pour les cadres Bootstrap et CSS modernes :

  • Aucun rendu HTML natif : XFINIUM.PDF n'inclut pas de moteur intégré de conversion HTML en PDF
  • Support HTML de base seulement : Limité à des structures HTML simples sans CSS avancé
  • Aucun support pour Bootstrap : Les cadres Bootstrap modernes (4/5) avec flexbox et grille CSS ne sont pas pris en charge
  • Détournements requis : Les développeurs doivent utiliser des API PDF de bas niveau pour recréer manuellement les mises en page
  • Outils externes nécessaires : Peut nécessiter une intégration avec des moteurs de rendu HTML externes

Impact sur le développement : Les applications utilisant Bootstrap ou des cadres CSS modernes ne peuvent pas directement convertir leur UI en PDF avec XFINIUM.PDF. Les développeurs doivent soit :

  1. Recréer les mises en page en utilisant les API de dessin de bas niveau de XFINIUM.PDF (temps de développement significatif)
  2. Intégrer des outils de rendu HTML externes (complexité et dépendances supplémentaires)
  3. Maintenir le code de mise en page PDF distinct du code UI web (surcharge de maintenance)

Pour les projets nécessitant une conversion HTML en PDF, surtout avec des cadres modernes comme Bootstrap, les limitations de XFINIUM.PDF le rendent inadapté sans un effort de développement important supplémentaire.

Pour un support complet de Bootstrap et des cadres CSS modernes, consultez le Guide Bootstrap & Flexbox CSS.

Pricing and Licensing

Tarification et Licence XFINIUM.PDF

Chaque package est disponible en deux éditions : l'édition Générateur, qui fournit des fonctionnalités de production et d'édition de PDF, et l'édition Viewer, qui contient toutes les fonctionnalités de l'édition Générateur, plus le rendu et la visualisation de PDF.

  • Chaque développeur a sa licence pour la bibliothèque PDF Xfinium. Chaque développeur qui produit du code pour XFINIUM a besoin d'une licence pour cette bibliothèque de fichiers PDF.
  • XFINIUM.PDF peut être envoyé sans redevance à un nombre illimité de PC de bureau et de serveurs dans le cadre de votre licence.
  • Un abonnement d'assistance d'un an offre une année de mises à jour gratuites ainsi qu'une assistance technique.

Les tarifs vont de 290,00 $ à 872,00 $ par an selon le package respectif.

Tarification et licences d'IronPDF

IronPDF, d'autre part, est une bibliothèque PDF C#. Il est gratuit à utiliser pour le développement et peut être licencié pour un usage commercial à tout moment. Des licences à projet unique, pour un développeur unique, pour des agences, et pour des organisations multinationales, ainsi que des redistributions SaaS et OEM, sont toutes disponibles. Toutes les licences bénéficient d'une garantie de remboursement de 30 jours, d'une année de support logiciel et de mises à jour, de la validité pour dev/mise en scène/production, et d'une licence perpétuelle (achat unique). Le package Lite est disponible pour $799. Il n'y a pas de dépenses récurrentes avec les produits IronPDF.

Conclusion

La bibliothèque Iron PDF facilite la création de documents PDF car elle ne dépend pas d'API propriétaires. « HTML-To-PDF » convertit les types de documents à standard ouvert tels que HTML, JS, CSS, JPG, PNG, GIF, et SVG en PDFs d'une précision pixelisée. En d'autres mots, elle exploite les talents que les développeurs possèdent déjà. Elle permet aux utilisateurs de télécharger des documents, de les envoyer par email, de les enregistrer dans le cloud, et de faire des factures, devis, rapports, contrats, et autres documents. Elle fonctionne avec ASP.NET, ASP.NET Core, les formulaires web, MVC, le framework .NET, et les APIs web .NET Core.

La bibliothèque XFINIUM.PDF propose une large gamme de fonctions pour les novices comme pour les développeurs PDF avancés. Que vous ayez besoin de faire un simple rapport, de remplir un formulaire PDF, de construire un portfolio PDF, d'expurger des informations sensibles d'un fichier PDF, ou de convertir un fichier PDF en image TIFF multipage, elle possède les outils dont vous avez besoin. Vous avez un contrôle total sur les fichiers PDF générés car le modèle d'objet de base respecte la spécification PDF. Le code XFINIUM.PDF peut être compilé sur toutes les plateformes prises en charge sans modification. La collection XFINIUM.PDF est disponible pour vous assister.

Les licences XFINIUM.PDF viennent en deux éditions, le Générateur et le Visualiseur, qui commencent à 290 $ et 387 $ respectivement. Cela est quelque peu moins cher que IronPDF, qui a une version légère commençant à $799. IronPDF vaut la peine d'être choisi car il offre à la fois des licences pour utilisateur unique et multi-utilisateurs, tandis que XFINIUM.PDF n'offre qu'une licence pour utilisateur unique — ce qui signifie que vous aurez besoin d'une licence pour chaque développeur. D'autre part, IronPDF offre une licence professionnelle à partir de 799 $ qui peut être utilisée par un nombre illimité d'utilisateurs.

Avec IronPDF, vous pouvez manipuler des fichiers PDF plus facilement qu'avec XFINIUM.PDF. IronPDF utilise moins de lignes de code pour des manipulations compliquées, ce qui aide à alléger la charge de travail du programmeur.

La société Iron Software offre également à tous ses clients l'option d'acquérir l'intégralité de la suite de packages en seulement deux clics. Cela signifie que pour le prix de seulement deux bibliothèques dans la suite Iron Software, vous pouvez actuellement obtenir toutes les cinq bibliothèques, avec un support ininterrompu pour toutes.

Veuillez noterXFINIUM.PDF est une marque déposée de son propriétaire respectif. This site is not affiliated with, endorsed by, or sponsored by XFINIUM.PDF. Tous les noms de produits, logos et marques sont la propriété de leurs propriétaires respectifs. Les comparaisons sont à des fins d'information uniquement et reflètent les informations disponibles publiquement au moment de la rédaction.

Questions Fréquemment Posées

Quelles sont les principales fonctionnalités d'IronPDF pour la conversion de HTML en PDF ?

IronPDF utilise le moteur Chromium de .NET pour convertir HTML en PDF. Il prend en charge HTML5, CSS, JavaScript et l'intégration d'images, ce qui en fait une solution complète pour la création de PDF à partir de contenu web.

Comment XFINIUM.PDF se compare-t-il à d'autres bibliothèques PDF pour .NET ?

XFINIUM.PDF est une bibliothèque multiplateforme offrant deux éditions : Générateur et Visionneuse. Elle excelle dans la création, l'édition, le rendu de PDF, et inclut des fonctionnalités comme la sécurité, les signatures numériques et le support des codes-barres.

IronPDF peut-il être utilisé sur des plateformes cloud comme Azure et AWS ?

Oui, IronPDF est compatible avec diverses plateformes, y compris Azure et AWS, ce qui permet un déploiement flexible des solutions PDF dans des environnements cloud.

Quelles sont les options d'installation disponibles pour IronPDF dans les projets .NET ?

IronPDF peut être installé à l'aide du gestionnaire de packages NuGet de Visual Studio, de l'invite de commande pour développeur, ou en téléchargeant directement le package NuGet ou la bibliothèque DLL.

Quelles sont les capacités d'édition PDF d'IronPDF ?

IronPDF permet une édition PDF étendue, y compris le remplissage de champs de formulaire, la fusion de documents et l'extraction de texte et d'images. Il prend également en charge l'ajout d'entêtes, de pieds de page et d'annotations.

Comment les options de licence diffèrent-elles entre IronPDF et XFINIUM.PDF ?

XFINIUM.PDF offre des licences à partir de 290 $ par développeur avec distribution sans redevance. IronPDF propose des options de licence plus larges, y compris une licence professionnelle pour des utilisateurs illimités.

Quelles fonctionnalités de sécurité XFINIUM.PDF fournit-il ?

XFINIUM.PDF prend en charge des fonctionnalités de sécurité comme des mots de passe utilisateur et propriétaire, des droits d'accès aux documents, le chiffrement RC4 et AES, et l'effacement de contenu pour assurer la sécurité des documents.

Pourquoi les développeurs pourraient-ils choisir IronPDF pour leurs projets ?

Les développeurs pourraient choisir IronPDF pour son approche simplifiée de la manipulation PDF, nécessitant moins de lignes de code, et sa flexibilité avec des licences pour utilisateur unique ou multi-utilisateur.

Comment IronPDF gère-t-il le remplissage de formulaires dans les PDF ?

IronPDF fournit des outils pour remplir les champs de formulaire au sein des PDF, permettant la création dynamique de documents et l'interaction avec les utilisateurs.

Quelles capacités de signature numérique sont disponibles dans ces bibliothèques PDF ?

IronPDF et XFINIUM.PDF prennent en charge les signatures numériques, permettant une validation sécurisée de l'authenticité et de l'intégrité des documents.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite