Przejdź do treści stopki
PRZEWODNIKI MIGRACJI

Jak przeprowadzić migrację z PDFPrinting.NET do IronPDF w języku C#

Przejście z PDFPrinting.NET naIronPDFrozszerza możliwości obsługi plików PDF z biblioteki służącej wyłącznie do drukowania na kompleksowe rozwiązanie, które obsługuje cały cykl życia plików PDF, w tym tworzenie, edycję, wyodrębnianie, zabezpieczenia i drukowanie. Niniejszy przewodnik zawiera kompletną, szczegółową ścieżkę migracji, która pozwala zachować istniejące procesy drukowania, dodając jednocześnie funkcje generowania plików PDF, konwersji do formatu HTML oraz obsługi wielu platform.

Dlaczego warto przejść z PDFPrinting.NET na IronPDF

Zrozumienie PDFPrinting.NET

PDFPrinting.NET wyróżnia się jako specjalistyczne rozwiązanie oferujące niezrównaną prostotę i skuteczność w cichym drukowaniu plików PDF. Działająca głównie w ekosystemie Windows, PDFPrinting.NET jest komercyjną biblioteką zaprojektowaną specjalnie dla programistów, którzy potrzebują zintegrować funkcje drukowania PDF ze swoimi aplikacjami. Jako narzędzie przeznaczone wyłącznie do cichego i niezawodnego drukowania plików PDF, PDFPrinting.NET odnajduje swoją niszę w upraszczaniu często skomplikowanego zadania programowego drukowania dokumentów bez interwencji użytkownika.

Jedną z najważniejszych zalet PDFPrinting.NET jest możliwość drukowania dokumentów w tle. Omija na typowe okna dialogowe PRINT, ułatwiając w pełni zautomatyzowane procesy przepływu pracy, co ma kluczowe znaczenie dla aplikacji wymagających minimalnej interakcji użytkownika.

Ograniczenie dotyczące wyłącznie drukowania

Zauważalnym ograniczeniem PDFPrinting.NET jest to, że zajmuje się on wyłącznie aspektem drukowania w przetwarzaniu plików PDF. Nie może tworzyć, modyfikować ani manipulować dokumentami PDF, co ogranicza jego przydatność dla programistów potrzebujących rozwiązań obejmujących cały cykl życia dokumentów PDF:

  1. Tylko drukowanie: Nie można tworzyć, edytować ani modyfikować dokumentów PDF.

  2. Tylko Windows: powiązane z infrastrukturą drukowania systemu Windows — brak obsługi systemów Linux/macOS. Opieranie się na infrastrukturze drukowania systemu Windows ogranicza jego zastosowanie wyłącznie do środowisk Windows, co ogranicza użyteczność międzyplatformową.

  3. Brak generowania plików PDF: Nie można konwertować HTML, adresów URL ani danych do formatu PDF.

  4. Brak możliwości edycji dokumentów: nie można łączyć, dzielić, dodawać znaków wodnych ani zabezpieczać plików PDF.

  5. Brak funkcji wyodrębniania tekstu: Nie można odczytywać ani wyodrębniać treści z plików PDF.

  6. Brak obsługi formularzy: Nie można wypełniać ani spłaszczać formularzy PDF.

Porównanie PDFPrinting.NET i IronPDF

Funkcja PDFPrinting.NET IronPDF
Podstawowa funkcjonalność Ciche drukowanie plików PDF Obsługa pełnego cyklu (tworzenie, edycja, PRINT)
Obsługa platform Tylko dla systemu Windows Wieloplatformowe
Możliwości tworzenia i edycji plików PDF Nie Tak
Konwersja HTML do PDF Nie Tak
Przydatność w zautomatyzowanych procesach High High
Dodatkowe zależności Wymaga drukarek Windows Wewnętrzny silnik przeglądarki do renderowania
Ciche drukowanie Tak Tak
Wyodrębnianie tekstu Nieobsługiwane Obsługiwane
Licencjonowanie Komercjalne Komercjalne

IronPDF oferuje bardziej kompleksowe rozwiązanie, obejmujące cały cykl życia obsługi plików PDF. Ułatwia tworzenie, edycję, konwersję i drukowanie dokumentów PDF, oferując programistom pełną Suite funkcji za pośrednictwem ujednoliconego interfejsu API. W przeciwieństwie do PDFPrinting.NET,IronPDFmoże być wdrażany na różnych platformach, co czyni go wszechstronnym wyborem dla aplikacji działających w zróżnicowanych środowiskach.

Dla zespołów planujących wdrożenie .NET 10 i C# 14 w latach 2025 i 2026,IronPDFoferuje kompletne rozwiązanie do obsługi plików PDF, które działa w środowiskach Windows, Linux i macOS.


Zanim zaczniesz

Wymagania wstępne

  1. Środowisko .NET: .NET Framework 4.6.2+ lub .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. Dostęp do NuGet: Możliwość instalowania pakietów NuGet
  3. Licencja IronPDF: Uzyskaj klucz licencyjny na stronie ironpdf.com

Zmiany w pakiecie NuGet

# Remove PDFPrinting.NET
dotnet remove package PDFPrinting.NET

# Install IronPDF
dotnet add package IronPdf
# Remove PDFPrinting.NET
dotnet remove package PDFPrinting.NET

# Install IronPDF
dotnet add package IronPdf
SHELL

Konfiguracja licencji

// 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

Zidentyfikuj zastosowanie PDFPrinting.NET

# Find PDFPrinting.NET usage
grep -r "PDFPrinting\|PDFPrinter" --include="*.cs" .

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

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

Kompletna dokumentacija API

Zmiany w przestrzeni nazw

// Before: PDFPrinting.NET
using PDFPrinting.NET;
using PDFPrintingNET;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Printing;
// Before: PDFPrinting.NET
using PDFPrinting.NET;
using PDFPrintingNET;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Printing;
' Before: PDFPrinting.NET
Imports PDFPrinting.NET
Imports PDFPrintingNET

' After: IronPDF
Imports IronPdf
Imports IronPdf.Rendering
Imports IronPdf.Printing
$vbLabelText   $csharpLabel

Mapowania klas podstawowych

PDFPrinting.NET IronPDF
PDFPrinter PdfDocument
HtmlToPdfConverter ChromePdfRenderer
WebPageToPdfConverter ChromePdfRenderer
Właściwości ustawień drukowania PrintSettings

Mapowanie metod drukowania

PDFPrinting.NET IronPDF
printer.Print(filePath) pdf.Print()
printer.Print(path, printerName) pdf.Print(printerName)
printer.PrinterName = "..." pdf.Print("...")
printer.GetPrintDocument(path) pdf.GetPrintDocument()
printer.Copies = n printSettings.NumberOfCopies = n
printer.Duplex = true printSettings.DuplexMode = Duplex.Vertical
printer.CollatePages = true printSettings.Collate = true

Nowe funkcje niedostępne w PDFPrinting.NET

FunkcjaIronPDF Opis
renderer.RenderHtmlAsPdf(html) Konwersja HTML do PDF
renderer.RenderUrlAsPdf(url) Konwersja adresów URL do formatu PDF
PdfDocument.Merge(pdfs) Łączenie wielu plików PDF
pdf.ApplyWatermark(html) Dodaj znaki wodne
pdf.SecuritySettings.UserPassword Ochrona hasłem
pdf.ExtractAllText() Wyodrębnianie tekstu

Przykłady migracji kodu

Przykład 1: Konwersja HTML do PDF

Przed (PDFPrinting.NET):

// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}
// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}
Imports PDFPrinting.NET
Imports System

Class Program
    Shared Sub Main()
        Dim converter As New HtmlToPdfConverter()
        Dim html As String = "<html><body><h1>Hello World</h1></body></html>"
        converter.ConvertHtmlToPdf(html, "output.pdf")
        Console.WriteLine("PDF created successfully")
    End Sub
End Class
$vbLabelText   $csharpLabel

Po (IronPDF):

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

class Program
{
    static void Main()
    {
        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()
    {
        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()
        Dim renderer = 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

PDFPrinting.NET używa HtmlToPdfConverter z ConvertHtmlToPdf(html, outputPath), co łączy renderowanie i zapisywanie w jednym wywołaniu.IronPDFużywa ChromePdfRenderer z RenderHtmlAsPdf(), co zwraca obiekt PdfDocument, który następnie zapisujesz za pomocą SaveAs(). Takie rozdzielenie zapewnia większą elastyczność — przed zapisaniem można modyfikować plik PDF (dodawać znaki wodne, łączyć z innymi dokumentami, dodawać zabezpieczenia).

IronPDF oferuje funkcje takie jak konwersja HTML do PDF, która pozwala programistom renderować treści internetowe jako pliki PDF — wykorzystując nowoczesne technologie internetowe do tworzenia dokumentów. Wykorzystując wewnętrznie silniki przeglądarek,IronPDFdokładnie odtwarza styl i renderowanie dokumentów internetowych w plikach PDF. Kompleksowe przykłady można znaleźć w dokumentacji dotyczącej konwersji HTML do PDF.

Przykład 2: Konwersja adresów URL do formatu PDF

Przed (PDFPrinting.NET):

// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new WebPageToPdfConverter();
        string url = "https://www.example.com";
        converter.Convert(url, "webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}
// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new WebPageToPdfConverter();
        string url = "https://www.example.com";
        converter.Convert(url, "webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}
Imports PDFPrinting.NET
Imports System

Class Program
    Shared Sub Main()
        Dim converter As New WebPageToPdfConverter()
        Dim url As String = "https://www.example.com"
        converter.Convert(url, "webpage.pdf")
        Console.WriteLine("PDF from URL created successfully")
    End Sub
End Class
$vbLabelText   $csharpLabel

Po (IronPDF):

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

class Program
{
    static void Main()
    {
        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()
    {
        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

Class Program
    Shared Sub Main()
        Dim renderer = 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 Class
$vbLabelText   $csharpLabel

PDFPrinting.NET używa WebPageToPdfConverter z Convert(url, outputPath).IronPDFużywa tej samej klasy ChromePdfRenderer z metodą RenderUrlAsPdf(). Należy pamiętać, żeIronPDFużywa jednej klasy renderującej zarówno dla ciągów HTML, jak i adresów URL, co upraszcza kod, gdy potrzebne są obie te funkcje. Dowiedz się więcej z naszych samouczków.

Przykład 3: Nagłówki i stopki

Przed (PDFPrinting.NET):

// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.HeaderText = "Company Report";
        converter.FooterText = "Page {page} of {total}";
        string html = "<html><body><h1>Document Content</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}
// NuGet: Install-Package PDFPrinting.NET
using PDFPrinting.NET;
using System;

class Program
{
    static void Main()
    {
        var converter = new HtmlToPdfConverter();
        converter.HeaderText = "Company Report";
        converter.FooterText = "Page {page} of {total}";
        string html = "<html><body><h1>Document Content</h1></body></html>";
        converter.ConvertHtmlToPdf(html, "report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}
Imports PDFPrinting.NET
Imports System

Class Program
    Shared Sub Main()
        Dim converter As New HtmlToPdfConverter()
        converter.HeaderText = "Company Report"
        converter.FooterText = "Page {page} of {total}"
        Dim html As String = "<html><body><h1>Document Content</h1></body></html>"
        converter.ConvertHtmlToPdf(html, "report.pdf")
        Console.WriteLine("PDF with headers/footers created")
    End Sub
End Class
$vbLabelText   $csharpLabel

Po (IronPDF):

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

class Program
{
    static void Main()
    {
        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()
    {
        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

Class Program
    Shared Sub Main()
        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 Class
$vbLabelText   $csharpLabel

PDFPrinting.NET wykorzystuje proste właściwości ciągów znaków HeaderText i FooterText z symbolami zastępczymi {page} i {total}.IronPDFwykorzystuje obiekty HtmlHeaderFooter z właściwością HtmlFragment, która akceptuje pełny kod HTML, umożliwiając bogate formatowanie za pomocą CSS. Zwróć uwagę na zmianę składni symboli zastępczych: PDFPrinting.NET używa {total}, aIronPDFużywa {total-pages}.


Ważne uwagi dotyczące migracji

Zmiana składni symboli zastępczych

Symbole zastępcze nagłówków/stopek różnią się w zależności od biblioteki:

// PDFPrinting.NET placeholders
"Page {page} of {total}"

//IronPDFplaceholders
"Page {page} of {total-pages}"
// PDFPrinting.NET placeholders
"Page {page} of {total}"

//IronPDFplaceholders
"Page {page} of {total-pages}"
$vbLabelText   $csharpLabel

Wzorzec "Load-Then-PRINT"

PDFPrinting.NET przekazuje ścieżki do plików bezpośrednio; Najpierw ładuje się IronPDF:

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

// IronPDF: Load first, then operate
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();
// PDFPrinting.NET: Direct path to Print()
printer.Print("document.pdf");

// IronPDF: Load first, then operate
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();
' PDFPrinting.NET: Direct path to Print()
printer.Print("document.pdf")

' IronPDF: Load first, then operate
Dim pdf = PdfDocument.FromFile("document.pdf")
pdf.Print()
$vbLabelText   $csharpLabel

Migracja ustawień drukowania

PDFPrinting.NET wykorzystuje właściwości;IronPDFwykorzystuje obiekt ustawień:

// PDFPrinting.NET: Properties on printer object
printer.Copies = 2;
printer.Duplex = true;

// IronPDF: Settings object
var settings = new PrintSettings
{
    NumberOfCopies = 2,
    DuplexMode = System.Drawing.Printing.Duplex.Vertical
};
pdf.Print(settings);
// PDFPrinting.NET: Properties on printer object
printer.Copies = 2;
printer.Duplex = true;

// IronPDF: Settings object
var settings = new PrintSettings
{
    NumberOfCopies = 2,
    DuplexMode = System.Drawing.Printing.Duplex.Vertical
};
pdf.Print(settings);
' PDFPrinting.NET: Properties on printer object
printer.Copies = 2
printer.Duplex = True

' IronPDF: Settings object
Dim settings As New PrintSettings With {
    .NumberOfCopies = 2,
    .DuplexMode = System.Drawing.Printing.Duplex.Vertical
}
pdf.Print(settings)
$vbLabelText   $csharpLabel

Nagłówki HTML a nagłówki tekstowe

// PDFPrinting.NET: Simple text
converter.HeaderText = "Company Report";

// IronPDF: Pełny kod HTML with styling
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center'>Company Report</div>"
};
// PDFPrinting.NET: Simple text
converter.HeaderText = "Company Report";

// IronPDF: Pełny kod HTML with styling
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center'>Company Report</div>"
};
' PDFPrinting.NET: Simple text
converter.HeaderText = "Company Report"

' IronPDF: Pełny kod HTML with styling
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
    .HtmlFragment = "<div style='text-align:center'>Company Report</div>"
}
$vbLabelText   $csharpLabel

Nowe możliwości po migracji

Po migracji doIronPDFzyskujesz możliwości, których PDFPrinting.NET nie jest w stanie zapewnić:

Łączenie plików 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

Znaki wodne

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

Ochrona hasłem

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

Wyodrębnianie tekstu

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

Przebieg pracy "Generuj, a następnie PRINT"

DziękiIronPDFmożesz generować pliki PDF i drukować je w ramach jednego procesu:

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

Drukowanie wieloplatformowe

PDFPrinting.NET działa wyłącznie w systemie Windows.IronPDFdziała na wielu platformach:

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

Podsumowanie porównania funkcji

Funkcja PDFPrinting.NET IronPDF
Ciche drukowanie
Ustawienia drukowania
HTML do PDF
URL do pliku PDF
Nagłówki/stopki Podstawowe Pełny kod HTML
Łączenie plików PDF
Podział plików PDF
Znaki wodne
Ekstrakcja tekstu
Ochrona hasłem
Wieloplatformowe

Lista kontrolna migracji

Przed migracją

  • Sporządź spis wszystkich miejsc użycia PDFPrinting.NET w kodzie źródłowym
  • Udokumentuj wszystkie obecnie używane nazwy drukarek
  • Zwróć uwagę na wszystkie konfiguracje ustawień drukowania
  • Sprawdź, czy potrzebna jest obsługa wielu platform
  • Zaplanuj przechowywanie klucza licencyjnegoIronPDF(zalecane są zmienne środowiskowe)
  • Najpierw przetestuj z Licencją Trial IronPDF

Zmiany w pakiecie

  • Usuń pakiet NuGet PDFPrinting.NET
  • Zainstaluj pakiet NuGet IronPdf: dotnet add package IronPdf

Zmiany w kodzie

  • Zaktualizuj importy przestrzeni nazw
  • Zastąp HtmlToPdfConverter przez ChromePdfRenderer
  • Zastąp WebPageToPdfConverter przez ChromePdfRenderer
  • Zastąp ConvertHtmlToPdf(html, path) przez RenderHtmlAsPdf(html).SaveAs(path)
  • Zastąp Convert(url, path) przez RenderUrlAsPdf(url).SaveAs(path)
  • Zaktualizuj nagłówek/stopkę z FooterText na HtmlFooter
  • Zaktualizuj składnię symboli zastępczych ({total}{total-pages})
  • Zamień wywołania drukowania na wzorzec "załaduj, a następnie wydrukuj"
  • Zaktualizuj ustawienia PRINT do obiektu PrintSettings

Po migracji

  • Wykonaj druk próbny na wszystkich platformach docelowych
  • Sprawdź renderowanie nagłówków/stopek
  • Rozważ dodanie funkcji generowania plików PDF dla dokumentów dynamicznych
  • W razie potrzeby dodaj nowe funkcje (scalanie, znaki wodne, zabezpieczenia)

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie