IRONSOFTWAREHOME
VIDÉOS

Comment générer des fichiers PDF dans .NET Core avec IronPDF

Curtis Chau
Curtis Chau
Updated: 19 juillet 2026

La migration de PDFPrinting.NET vers IronPDF étend vos capacités PDF d'une bibliothèque d'impression uniquement à une solution complète qui gère le cycle de vie complet du PDF, y compris la création, la manipulation, l'extraction, la sécurité et l'impression. Ce guide propose un chemin de migration complet, étape par étape, qui préserve vos flux d'impression existants tout en ajoutant des fonctionnalités de génération de PDF, de conversion HTML et de prise en charge multiplateforme.

Pourquoi migrer de PDFPrinting.NET à IronPDF

Comprendre PDFPrinting.NET

PDFPrinting.NET (Terminalworks; NuGet PdfPrintingNet) est une bibliothèque spécialisée axée sur l'impression silencieuse de PDF dans les environnements Windows. En tant qu'outil dédié axé sur l'impression silencieuse des PDFs existants, il simplifie la tâche de l'envoi des documents à une imprimante de manière programmatique sans intervention de l'utilisateur. Le nouveau point d'entrée est la classe PdfPrint; le code ancien peut encore faire référence à l'héritage TerminalWorks.PDFPrinting.PDFPrinter.

Une force centrale est l'impression silencieuse - en contournant les fenêtres de dialogue d'impression habituelles, afin que les flux de travail entièrement automatisés puissent s'exécuter sans surveillance.

La limitation axée sur l'impression

PDFPrinting.NET se concentre sur un ensemble restreint d'opérations et ne rédige pas de nouveau contenu PDF. Son champ d'application est l'impression, la visualisation, l'édition de base, et la trame des documents existants :

  1. Axé sur l'impression : Ne rédige aucun nouveau contenu PDF - imprime uniquement, affiche, édite et trame des PDFs préexistants.

  2. Impression uniquement Windows : Lié à l'infrastructure d'impression Windows, ce qui limite l'utilisabilité multiplateforme.

  3. Pas d'API HTML/URL-vers-PDF : Il n'y a pas de HtmlToPdfConverter et aucune classe WebPageToPdfConverter — ces fonctionnalités n'existent pas dans l'API.

  4. Manipulation limitée : La fusion/split/extraction de base est disponible via PdfPrintDocument; il n'y a pas de filigranage ou de création de contenu moderne.

  5. Aucune surface d'extraction de texte complète.

  6. Pas de remplissage ou d'aplatissement de formulaire.

Comparaison IronPDF for NET forIronPdf.NET (en anglais)

FonctionPDFPrinting.NETIronPDF
Fonctionnalité principaleImpression PDF silencieuseTraitement du cycle complet (création, édition, impression)
Support de la plateformeWindows uniquementMultiplateforme
Capacité de création/manipulation de fichiers PDFNonOui
Conversion HTML vers PDFNonOui
Adaptation aux flux de travail automatisésHautHaut
Dépendances supplémentairesS'appuie sur les imprimantes WindowsMoteur interne du navigateur pour le rendu
Impression silencieuseOuiOui
Extraction de texteNon pris en chargePrise en charge
LicenceCommercialCommercial

IronPDF présente une solution plus complète en abordant l'ensemble du cycle de vie du traitement des PDF. Il facilite la création, l'édition, la conversion et l'impression de documents PDF, en offrant aux développeurs une suite complète de fonctionnalités par le biais d'une API unifiée. Contrairement à PDFPrinting.NET,IronPDF peut être déployé sur différentes plateformes, ce qui en fait un choix polyvalent pour les applications fonctionnant dans divers environnements.

Pour les équipes sur .NET moderne,IronPDF fournit une solution PDF complète qui fonctionne sur les environnements Windows, Linux, et macOS.


Avant de commencer

Prérequis

  1. Environnement .NET : .NET Framework 4.6.2+ ou .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. Accès à NuGet : possibilité d'installer des packages NuGet
  3. Licence IronPDF : Obtenez votre clé de licence sur IronPDF

Modifications du paquet NuGet

# Remove PDFPrinting.NET (the actual NuGet ID is PdfPrintingNet)
dotnet remove package PdfPrintingNet

# Install IronPDF
dotnet add package IronPdf
SHELL

Configuration de la licence

// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

Identifier l'utilisation de PDFPrinting.NET

# Find PDFPrinting.NET usage (newer + legacy namespaces)
grep -rE "PdfPrintingNet|TerminalWorks\.PDFPrinting|PdfPrint\b|PdfPrintDocument|PDFPrinter" --include="*.cs" .

# Find print-related code
grep -r "\.Print(\|PrinterName\|GetPrintDocument" --include="*.cs" .
SHELL

Référence API complète

Modifications de l'espace de nommage

// Before: PDFPrinting.NET
// Newer API:
using PdfPrintingNet;
// Older code may use:
using TerminalWorks.PDFPrinting;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Printing;

Mappages de classes de base

PDFPrinting.NETIronPDF
PdfPrint (nouveau) / PDFPrinter (héritage)PdfDocument + Print()
PdfPrintDocumentPdfDocument
(aucune classe HTML-vers-PDF n'existe)ChromePdfRenderer.RenderHtmlAsPdf
(aucune classe URL-vers-PDF n'existe)ChromePdfRenderer.RenderUrlAsPdf
Propriétés des paramètres d'impressionPrintSettings

Imprimer les correspondances de méthodes

PDFPrinting.NETIronPDF
pdfPrint.Print(filePath)pdf.Print()
pdfPrint.PrinterName = "..."; pdfPrint.Print(path) pdf.Print(printerName)
new PdfPrintDocument(...)pdf.GetPrintDocument()
pdfPrint.Copies = nprintSettings.NumberOfCopies = n
pdfPrint.Duplex = trueprintSettings.DuplexMode = Duplex.Vertical
pdfPrint.Collate = trueprintSettings.Collate = true

Nouvelles fonctionnalités non disponibles dans PDFPrinting.NET

Fonctionnalité d'IronPDFDescription du projet
renderer.RenderHtmlAsPdf(html)Conversion de HTML en PDF
renderer.RenderUrlAsPdf(url)Conversion d'URL en PDF
PdfDocument.Merge(pdfs)Fusionner plusieurs PDF
pdf.ApplyWatermark(html)Ajouter des filigranes
pdf.SecuritySettings.UserPasswordProtection par mot de passe
pdf.ExtractAllText()Extraction de texte

Exemples de migration de code

Exemple 1 : Conversion HTML vers PDF

Avant (PDFPrinting.NET) : PDFPrinting.NET n'a pas d'API HTML-vers-PDF — il n'y a pas de classe HtmlToPdfConverter. Le flux de travail le plus proche consiste à générer le PDF avec une autre bibliothèque puis à imprimer ou transmettre le fichier :

// NuGet: Install-Package PdfPrintingNet
using PdfPrintingNet;
using System;

class Program
{
    static void Main()
    {
        // Step 1: Produce the PDF with another library (PDFPrinting.NET cannot).
        // Step 2: Print the existing PDF file.
        var pdfPrint = new PdfPrint("license-owner", "license-key");
        var status = pdfPrint.Print("output.pdf");
        Console.WriteLine($"Printed: {status}");
    }
}

Après (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

        var renderer = new ChromePdfRenderer();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}

Parce que PDFPrinting.NET ne peut pas rédiger de PDFs du tout, la migration n'est pas un échange de classe un pour un - c'est adopter une nouvelle capacité. Le ChromePdfRenderer.RenderHtmlAsPdf() d'IronPDF retourne un PdfDocument que vous pouvez manipuler (filigranes, fusion, sécurité) avant de sauvegarder avec SaveAs(). En exploitant un moteur basé sur Chromium,IronPDF reproduit le rendu moderne du CSS et du JavaScript avec une grande fidélité. Consultez la documentation HTML vers PDF pour des exemples complets.

Exemple 2 : Conversion d'une URL en PDF

Avant (PDFPrinting.NET) : Il n'y a pas de classe WebPageToPdfConverter — PDFPrinting.NET ne télécharge pas et n'affiche pas les pages web. Une bibliothèque séparée doit capturer l'URL sous forme de PDF d'abord ; PDFPrinting.NET peut alors imprimer le fichier résultant :

// NuGet: Install-Package PdfPrintingNet
using PdfPrintingNet;
using System;

class Program
{
    static void Main()
    {
        // Step 1: Capture the URL with another library (PDFPrinting.NET cannot).
        // Step 2: Print the resulting PDF.
        var pdfPrint = new PdfPrint("license-owner", "license-key");
        var status = pdfPrint.Print("webpage.pdf");
        Console.WriteLine($"Printed: {status}");
    }
}

Après (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

        var renderer = new ChromePdfRenderer();
        string url = "https://www.example.com";
        var pdf = renderer.RenderUrlAsPdf(url);
        pdf.SaveAs("webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}

IronPDF utilise une seule classe ChromePdfRenderer pour à la fois les chaînes HTML et les URLs, avec RenderUrlAsPdf() gérant la capture web en un seul appel. Pour en savoir plus, consultez nos tutoriels.

Exemple 3 : En-têtes et pieds de page

Avant (PDFPrinting.NET) : PDFPrinting.NET ne peut pas rédiger d'entêtes ou de pieds de page - il ne génère pas de PDFs à partir du HTML ou d'une autre source, et n'offre pas d'API de composition d'en-tête/pied de page. Si votre PDF les contient déjà, la bibliothèque peut l'imprimer :

// NuGet: Install-Package PdfPrintingNet
using PdfPrintingNet;
using System;

class Program
{
    static void Main()
    {
        // Headers/footers must already be baked into the PDF.
        var pdfPrint = new PdfPrint("license-owner", "license-key");
        pdfPrint.Print("report.pdf");
        Console.WriteLine("PDF with pre-existing headers/footers printed");
    }
}

Après (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Company Report</div>"
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
        };
        string html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}

IronPDF utilise des objets HtmlHeaderFooter avec une propriété HtmlFragment qui accepte le HTML complet, permettant un style riche avec CSS. Les espaces réservés tels que {page} et {total-pages} sont remplacés au moment de l'affichage.


Notes de migration essentielles

Les espaces réservés d'en-tête/pied de page sont une fonctionnalité exclusive à IronPDF

PDFPrinting.NET n'a pas d'API de rédaction d'en-tête ou de pied de page, donc il n'existe pas de syntaxe d'espace réservé à migrer.IronPDF prend en charge les espaces réservés {page} et {total-pages} à l'intérieur de HtmlHeaderFooter.HtmlFragment :

//IronPDF placeholders
"Page {page} of {total-pages}"
C#

Chargez puis imprimez

PDFPrinting.NET passe des chemins de fichiers directement à Print();IronPDF charge d'abord le document :

// PDFPrinting.NET: Direct path to Print()
pdfPrint.Print("document.pdf");

// IronPDF: Load first, then operate
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();

Migration des paramètres d'impression

PDFPrinting.NET utilise des propriétés sur PdfPrint;IronPDF utilise un objet de paramétrage :

// PDFPrinting.NET: Properties on PdfPrint
pdfPrint.Copies = 2;
pdfPrint.Duplex = true;

// IronPDF: Settings object
var settings = new PrintSettings
{
    NumberOfCopies = 2,
    DuplexMode = System.Drawing.Printing.Duplex.Vertical
};
pdf.Print(settings);

Nouvelles capacités après la migration

Après avoir migré vers IronPDF, vous bénéficiez de fonctionnalités que PDFPrinting.NET ne peut pas vous offrir :

Fusion de fichiers PDF

var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");

Marques de fond

pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");

Protection par mot de passe

pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";

Extraction de texte

string text = pdf.ExtractAllText();

Flux de travail "générer puis imprimer"

Avec IronPDF, vous pouvez générer des PDF et les imprimer en un seul flux de travail :

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice</h1>");
pdf.Print("Invoice Printer");

Imprimante multiplateforme

PDFPrinting.NET ne fonctionne que sous Windows.IronPDF fonctionne sur plusieurs plates-formes :

Windows

pdf.Print("HP LaserJet");

Linux

// Requires CUPS (Common Unix Printing System)
// Install: apt-get install cups
pdf.Print("HP_LaserJet");  // CUPS uses underscores instead of spaces

macOS

pdf.Print("HP LaserJet");

Résumé de la comparaison des fonctionnalités

FonctionPDFPrinting.NETIronPDF
Impression silencieuse
Paramètres d'impression
HTML vers PDF
URL vers PDF
En-têtes/Pieds de pageBasiqueHTML complet
Fusionner des PDF
Diviser les PDF
Filigranes
Extraction de texte
Protection par mot de passe
Multiplateforme

Liste de contrôle de la migration

Pré-migration

  • Inventorier toute utilisation de PDFPrinting .NET dans le code source
  • Documenter tous les noms d'imprimantes actuellement utilisées
  • Notez toutes les configurations des paramètres d'impression
  • Déterminer si une prise en charge multiplateforme est nécessaire
  • Planifier le stockage de la clé de licence IronPDF(variables d'environnement recommandées)
  • Commencez par tester avec une licence d'essai IronPDF.

Modifications du paquet

  • Supprimer le paquet NuGet PdfPrintingNet
  • Installer le paquet NuGet IronPdf : dotnet add package IronPdf

Modifications du code

  • Mettre à jour les importations de namespace (PdfPrintingNet / héritage TerminalWorks.PDFPrintingIronPdf)
  • Convertir les appels pdfPrint.Print(path) au motif PdfDocument.FromFile(path).Print()`
  • Déplacer les propriétés par impression (Copies, Duplex, Collate, PrinterName) sur un objet PrintSettings
  • Adopter de nouvelles capacités : utiliser ChromePdfRenderer.RenderHtmlAsPdf / RenderUrlAsPdf pour les entrées HTML et URL (aucun équivalent n'existait dans PDFPrinting.NET)
  • Configurer les en-têtes/pieds de page via RenderingOptions.HtmlHeader et HtmlFooter (nouvelle capacité)
  • Définir IronPdf.License.LicenseKey au démarrage de l'application

Après la migration

  • Test d'impression sur toutes les plateformes cibles
  • Vérifier l'affichage de l'en-tête et du pied de page
  • Envisagez d'ajouter la génération de PDF pour les documents dynamiques.
  • Ajouter de nouvelles fonctionnalités (fusion, filigranes, sécurité) selon les besoins

Veuillez noter: PDFPrinting.NET est une marque déposée de son propriétaire respectif. Ce site n'est pas affilié à, approuvé par ou sponsorisé par TerminalWorks. Tous les noms de produits, logos et marques sont la propriété de leurs propriétaires respectifs. Les comparaisons sont à titre informatif uniquement et reflètent les informations publiquement disponibles au moment de l'écriture.
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 et créer des manuels bien structurés et visuellement attrayants.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise