Comment générer des fichiers PDF dans .NET Core avec IronPDF
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 :
-
Axé sur l'impression : Ne rédige aucun nouveau contenu PDF - imprime uniquement, affiche, édite et trame des PDFs préexistants.
-
Impression uniquement Windows : Lié à l'infrastructure d'impression Windows, ce qui limite l'utilisabilité multiplateforme.
-
Pas d'API HTML/URL-vers-PDF : Il n'y a pas de
HtmlToPdfConverteret aucune classeWebPageToPdfConverter— ces fonctionnalités n'existent pas dans l'API. -
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. -
Aucune surface d'extraction de texte complète.
- Pas de remplissage ou d'aplatissement de formulaire.
Comparaison IronPDF for NET forIronPdf.NET (en anglais)
| Fonction | PDFPrinting.NET | IronPDF |
|---|---|---|
| Fonctionnalité principale | Impression PDF silencieuse | Traitement du cycle complet (création, édition, impression) |
| Support de la plateforme | Windows uniquement | Multiplateforme |
| Capacité de création/manipulation de fichiers PDF | Non | Oui |
| Conversion HTML vers PDF | Non | Oui |
| Adaptation aux flux de travail automatisés | Haut | Haut |
| Dépendances supplémentaires | S'appuie sur les imprimantes Windows | Moteur interne du navigateur pour le rendu |
| Impression silencieuse | Oui | Oui |
| Extraction de texte | Non pris en charge | Prise en charge |
| Licence | Commercial | Commercial |
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
- Environnement .NET : .NET Framework 4.6.2+ ou .NET Core 3.1+ / .NET 5/6/7/8/9+
- Accès à NuGet : possibilité d'installer des packages NuGet
- 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
# Remove PDFPrinting.NET (the actual NuGet ID is PdfPrintingNet)
dotnet remove package PdfPrintingNet
# Install IronPDF
dotnet add package IronPdf
Configuration de la licence
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";
' Add at application startup (Program.vb or Startup.vb)
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" .
# 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" .
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;
// Before: PDFPrinting.NET
// Newer API:
using PdfPrintingNet;
// Older code may use:
using TerminalWorks.PDFPrinting;
// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Printing;
' Before: PDFPrinting.NET
' Newer API:
Imports PdfPrintingNet
' Older code may use:
Imports TerminalWorks.PDFPrinting
' After: IronPDF
Imports IronPdf
Imports IronPdf.Rendering
Imports IronPdf.Printing
Mappages de classes de base
| PDFPrinting.NET | IronPDF |
|---|---|
PdfPrint (nouveau) / PDFPrinter (héritage) |
PdfDocument + Print() |
PdfPrintDocument |
PdfDocument |
| (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'impression | PrintSettings |
Imprimer les correspondances de méthodes
| PDFPrinting.NET | IronPDF |
|---|---|
pdfPrint.Print(filePath) |
pdf.Print() |
pdfPrint.PrinterName = "..."; pdfPrint.Print(path) |
pdf.Print(printerName) |
new PdfPrintDocument(...) |
pdf.GetPrintDocument() |
pdfPrint.Copies = n |
printSettings.NumberOfCopies = n |
pdfPrint.Duplex = true |
printSettings.DuplexMode = Duplex.Vertical |
pdfPrint.Collate = true |
printSettings.Collate = true |
Nouvelles fonctionnalités non disponibles dans PDFPrinting.NET
| Fonctionnalité d'IronPDF | Description 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.UserPassword |
Protection 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}");
}
}
// 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}");
}
}
Imports PdfPrintingNet
Imports System
Class Program
Shared Sub Main()
' Step 1: Produce the PDF with another library (PDFPrinting.NET cannot).
' Step 2: Print the existing PDF file.
Dim pdfPrint = New PdfPrint("license-owner", "license-key")
Dim status = pdfPrint.Print("output.pdf")
Console.WriteLine($"Printed: {status}")
End Sub
End Class
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");
}
}
// 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");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
Dim renderer As New ChromePdfRenderer()
Dim html As String = "<html><body><h1>Hello World</h1></body></html>"
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("output.pdf")
Console.WriteLine("PDF created successfully")
End Sub
End Class
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}");
}
}
// 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}");
}
}
Imports PdfPrintingNet
Imports System
Class Program
Shared Sub Main()
' Step 1: Capture the URL with another library (PDFPrinting.NET cannot).
' Step 2: Print the resulting PDF.
Dim pdfPrint As New PdfPrint("license-owner", "license-key")
Dim status = pdfPrint.Print("webpage.pdf")
Console.WriteLine($"Printed: {status}")
End Sub
End Class
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");
}
}
// 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");
}
}
Imports IronPdf
Imports System
Module Program
Sub Main()
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
Dim renderer As New ChromePdfRenderer()
Dim url As String = "https://www.example.com"
Dim pdf = renderer.RenderUrlAsPdf(url)
pdf.SaveAs("webpage.pdf")
Console.WriteLine("PDF from URL created successfully")
End Sub
End Module
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");
}
}
// 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");
}
}
Imports PdfPrintingNet
Imports System
Module Program
Sub Main()
' Headers/footers must already be baked into the PDF.
Dim pdfPrint As New PdfPrint("license-owner", "license-key")
pdfPrint.Print("report.pdf")
Console.WriteLine("PDF with pre-existing headers/footers printed")
End Sub
End Module
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");
}
}
// 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");
}
}
Imports IronPdf
Imports IronPdf.Rendering
Imports System
Module Program
Sub Main()
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
.HtmlFragment = "<div style='text-align:center'>Company Report</div>"
}
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
.HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
}
Dim html As String = "<html><body><h1>Document Content</h1></body></html>"
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("report.pdf")
Console.WriteLine("PDF with headers/footers created")
End Sub
End Module
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}"
//IronPDF placeholders
"Page {page} of {total-pages}"
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();
// PDFPrinting.NET: Direct path to Print()
pdfPrint.Print("document.pdf");
// IronPDF: Load first, then operate
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();
' PDFPrinting.NET: Direct path to Print()
pdfPrint.Print("document.pdf")
' IronPDF: Load first, then operate
Dim 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);
// 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);
' PDFPrinting.NET: Properties on PdfPrint
pdfPrint.Copies = 2
pdfPrint.Duplex = True
' IronPDF: Settings object
Dim settings As New PrintSettings With {
.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");
var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");
Dim pdf1 = PdfDocument.FromFile("document1.pdf")
Dim pdf2 = PdfDocument.FromFile("document2.pdf")
Dim merged = PdfDocument.Merge(pdf1, pdf2)
merged.SaveAs("merged.pdf")
Marques de fond
pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");
pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>")
Protection par mot de passe
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";
pdf.SecuritySettings.UserPassword = "userpassword"
pdf.SecuritySettings.OwnerPassword = "ownerpassword"
Extraction de texte
string text = pdf.ExtractAllText();
string text = pdf.ExtractAllText();
Dim text As String = 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");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice</h1>");
pdf.Print("Invoice Printer");
Dim renderer As New ChromePdfRenderer()
Dim 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");
pdf.Print("HP LaserJet");
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
// 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");
pdf.Print("HP LaserJet");
pdf.Print("HP LaserJet")
Résumé de la comparaison des fonctionnalités
| Fonction | PDFPrinting.NET | IronPDF |
|---|---|---|
| Impression silencieuse | ✓ | ✓ |
| Paramètres d'impression | ✓ | ✓ |
| HTML vers PDF | ✗ | ✓ |
| URL vers PDF | ✗ | ✓ |
| En-têtes/Pieds de page | Basique | HTML 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éritageTerminalWorks.PDFPrinting→IronPdf) - Convertir les appels
pdfPrint.Print(path) au motifPdfDocument.FromFile(path).Print()` - Déplacer les propriétés par impression (
Copies,Duplex,Collate,PrinterName) sur un objetPrintSettings - Adopter de nouvelles capacités : utiliser
ChromePdfRenderer.RenderHtmlAsPdf/RenderUrlAsPdfpour les entrées HTML et URL (aucun équivalent n'existait dans PDFPrinting.NET) - Configurer les en-têtes/pieds de page via
RenderingOptions.HtmlHeaderetHtmlFooter(nouvelle capacité) - Définir
IronPdf.License.LicenseKeyau 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

