Passer au contenu du pied de page
VIDéOS

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 :

  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)

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

  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
# 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";
// 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"
$vbLabelText   $csharpLabel

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" .
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;
// 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
$vbLabelText   $csharpLabel

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
$vbLabelText   $csharpLabel

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
$vbLabelText   $csharpLabel

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
$vbLabelText   $csharpLabel

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
$vbLabelText   $csharpLabel

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
$vbLabelText   $csharpLabel

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
$vbLabelText   $csharpLabel

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}"
$vbLabelText   $csharpLabel

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()
$vbLabelText   $csharpLabel

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)
$vbLabelText   $csharpLabel

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")
$vbLabelText   $csharpLabel

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>")
$vbLabelText   $csharpLabel

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"
$vbLabelText   $csharpLabel

Extraction de texte

string text = pdf.ExtractAllText();
string text = pdf.ExtractAllText();
Dim text As String = pdf.ExtractAllText()
$vbLabelText   $csharpLabel

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")
$vbLabelText   $csharpLabel

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")
$vbLabelText   $csharpLabel

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
$vbLabelText   $csharpLabel

macOS

pdf.Print("HP LaserJet");
pdf.Print("HP LaserJet");
pdf.Print("HP LaserJet")
$vbLabelText   $csharpLabel

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éritage TerminalWorks.PDFPrintingIronPdf)
  • 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 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 noterPDFPrinting.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 ...

Lire la suite

Équipe de soutien Iron

Nous sommes en ligne 24 heures sur 24, 5 jours sur 7.
Chat
Email
Appelez-moi