IronPDF vs PDFShift: C# HTML do PDF API Porównanie
Pracując z PDF-ami, będziesz chciał używać najlepszego narzędzia, które pasuje do potrzeb Twojego projektu, prawda? Ale z tyloma różnymi bibliotekami PDF tam, trudno zdecydować, która z nich jest dla Ciebie najlepsza. Dzisiaj przyjrzymy się bliżej dwóm wybitnym bibliotekom PDF: IronPDF i NReco.PdfGenerator.
Porównamy ich funkcje, kompatybilność i ogólną wydajność, aby pomóc ci podjąć świadomą decyzję, która biblioteka może być dla ciebie właściwie odpowiednia.
Przegląd IronPDF i NReco.PdfGenerator
IronPDF to wszechstronna biblioteka .NET, która świetnie radzi sobie z konwersją HTML na PDF i oferuje szeroki zestaw funkcji do pracy z plikami PDF. IronPDF wspiera nowoczesne standardy webowe, w tym HTML5, CSS3 i JavaScript, zapewniając wysoką wierność generacji PDF. Jest także projektowy z myślą o łatwości użytkowania, oferując intuicyjne API, które bezproblemowo integruje się z aplikacjami .NET.
NReco.PdfGenerator for .NET to biblioteka skupiająca się na konwersji HTML na PDF. Jest oparta na narzędziu wiersza poleceń wkhtmltopdf i polega na starej silnik renderowania Qt WebKit do tworzenia dokumentów PDF z treści HTML. Zwróć uwagę, że Qt WebKit nie jest już aktywnie rozwijany i ma ograniczone wsparcie dla nowoczesnych funkcji HTML5, CSS3 i JavaScript. Ta biblioteka jest znana ze swojej łatwości użytkowania i szybkiej integracji z projektami .NET, wymagając jedynie jednego zestawu .NET, który już zawiera binaria wkhtmltopdf.
Kompatybilność między platformami
IronPDF
IronPDF wyróżnia się swoją szeroką kompatybilnością między platformami. Wspiera szeroki zakres środowisk w ramach frameworku .NET, zapewniając bezproblemowe działanie na różnych platformach. Poniżej znajduje się podsumowanie kompatybilności platform IronPDF:
-
Wersje .NET: - Całkowicie napisana i wspiera C#, VB.NET i F#
- .NET Core (8, 7, 6, 5 i 3.1+) - .NET Standard 2.0+ - .NET Framework 4.6.2+
- Środowiska aplikacji: IronPDF działa w różnych środowiskach aplikacyjnych, takich jak Windows, Linux, Mac, Docker, Azure i AWS.
- IDE: Działa z IDE takimi jak Microsoft Visual Studio i JetBrains Rider & ReSharper.
- OS i Procesory: Wspiera różne systemy operacyjne i procesory w tym Windows, Mac, Linux, x64, x86, ARM.
Więcej szczegółów na temat zgodności IronPDF znajdziesz na Stronie Funkcji IronPDF.
NReco.PdfGenerator
-
Wersje .NET: - .NET Standard 2.0+ - .NET Framework 4.5+ - .NET Core 2.0+
- Środowiska aplikacji: NReco.PdfGenerator działa w różnych środowiskach, takich jak Windows, Linux i macOS. Pracując na Linuxie lub macOS, musisz upewnić się, że masz zainstalowane wszystkie potrzebne zależności, aby działać. Gdy wdrożony w Windows, może być używany w aplikacjach .NET Core.
Kluczowe Porównanie Funkcji: Funkcjonalność PDF w IronPDF vs. NReco.PdfGenerator
Funkcje IronPDF
- Konwersja PDF: IronPDF może konwertować HTML na PDF. Dzięki pełnemu wsparciu dla nowoczesnych standardów internetowych, możesz być pewny, że IronPDF zawsze zwróci perfekcyjnie dopasowane PDF-y z Twojej zawartości HTML. IronPDF może również konwertować pliki PDF z innych formatów, takich jak DOCX, obrazy, RTF i inne.
- Generowanie PDF: Z IronPDF możesz generować pliki PDF z adresów URL, plików ASPX lub stringów HTML.
- Funkcje zabezpieczeń: Dzięki IronPDF zawsze możesz być pewien, że dowolne poufne pliki PDF są zabezpieczone, dzięki jego funkcjom bezpieczeństwa. Użyj IronPDF do szyfrowania plików PDF, ustawiania haseł i uprawnień dla plików PDF.
- Funkcje edycji PDF: Za pomocą IronPDF możesz przetwarzać istniejące dokumenty PDF, je edytować i czytać pliki PDF z łatwością. IronPDF oferuje funkcje edycji, takie jak dodawanie nagłówków i stopek, umieszczanie tekstu i obrazów na stronach PDF, dodawanie niestandardowych znaków wodnych do plików PDF, praca z formularzami PDF oraz dzielenie lub łączenie plików PDF.
- Integracja: Bezproblemowo integruje się z aplikacjami ASP.NET i MVC.
Dla pełnej listy funkcji IronPDF, odwieź stronę IronPDF Features.
Funkcje NReco.PdfGenerator
- Konwersja HTML na PDF: Konwertuje HTML, CSS i podstawowy JavaScript na PDF za pomocą wkhtmltopdf i starego silnika Qt WebKit (ograniczone wsparcie dla nowoczesnych standardów webowych).
- Opcje PDF: Wspiera różne opcje PDF, takie jak orientacja strony, rozmiar, marginesy i powiększenie.
- Szablony: Szablony HTML dla nagłówków, stopek i numeracji stron.
- Łączenie treści: Łączy wiele stron HTML w jeden PDF.
- Dostosowywanie wyjścia: Dostosuj wygląd PDF-ów z niestandardowymi czcionkami i stylami.
- Wdrożenie: Dostępne dla wdrożeń Windows i innych niż Windows z użyciem NReco.PdfGenerator.LT.
Porównanie Najważniejszych Funkcji z Przykładami Kodów Pomiędzy IronPDF vs. NReco.PdfGenerator
Teraz spójrzmy bliżej na niektóre typowe przypadki użycia podczas pracy z dokumentami PDF i jak te dwie biblioteki je obsługują.
Konwersja HTML do PDF
Przykład IronPDF:
using IronPdf;
// Enable web security settings such as disabling local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate the renderer for creating PDFs
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export the PDF to a file
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external HTML assets: images, CSS, and JavaScript.
// Example uses 'c:\site\assets\' as the base path for loading assets
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"c:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
using IronPdf;
// Enable web security settings such as disabling local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate the renderer for creating PDFs
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export the PDF to a file
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external HTML assets: images, CSS, and JavaScript.
// Example uses 'c:\site\assets\' as the base path for loading assets
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"c:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Imports IronPdf
' Enable web security settings such as disabling local disk access or cross-origin requests
Installation.EnableWebSecurity = True
' Instantiate the renderer for creating PDFs
Dim renderer = New ChromePdfRenderer()
' Create a PDF from an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export the PDF to a file
pdf.SaveAs("output.pdf")
' Advanced Example with HTML Assets
' Load external HTML assets: images, CSS, and JavaScript.
' Example uses 'c:\site\assets\' as the base path for loading assets
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "c:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
Przykład NReco.PdfGenerator:
using System;
using NReco.PdfGenerator;
// Format HTML content with the current date and time
var htmlContent = String.Format("<body>Hello world: {0}</body>", DateTime.Now);
// Instantiate the HTML to PDF converter
var htmlToPdf = new HtmlToPdfConverter();
// Generate the PDF from the HTML content
var pdfBytes = htmlToPdf.GeneratePdf(htmlContent);
using System;
using NReco.PdfGenerator;
// Format HTML content with the current date and time
var htmlContent = String.Format("<body>Hello world: {0}</body>", DateTime.Now);
// Instantiate the HTML to PDF converter
var htmlToPdf = new HtmlToPdfConverter();
// Generate the PDF from the HTML content
var pdfBytes = htmlToPdf.GeneratePdf(htmlContent);
Imports System
Imports NReco.PdfGenerator
' Format HTML content with the current date and time
Private htmlContent = String.Format("<body>Hello world: {0}</body>", DateTime.Now)
' Instantiate the HTML to PDF converter
Private htmlToPdf = New HtmlToPdfConverter()
' Generate the PDF from the HTML content
Private pdfBytes = htmlToPdf.GeneratePdf(htmlContent)
IronPDF zapewnia wysoką wierność renderowania dzięki swojemu nowoczesnemu silnikowi renderowania Chromium (Blink) z pełną obsługą HTML5, CSS3 i JavaScript. Korzystając z IronPDF do konwersji HTML na PDF, będziesz mógł tworzyć idealnie dopracowane PDF-y z dokumentów HTML, stron webowych i innych. NReco.PdfGenerator używa wkhtmltopdf ze starym silnikiem Qt WebKit, który oferuje podstawowe renderowanie dla prostego HTMLu, ale ma ograniczone wsparcie dla nowoczesnych standardów webowych i może nie dorównać precyzji możliwości renderowania na bazie Chromium IronPDF.
Więcej przykładów użycia IronPDF do konwersji HTML na PDF znajdziesz na IronPDF HTML na PDF.
Szyfrowanie plików PDF
Przykład IronPDF:
using IronPdf;
using System;
// Open an encrypted file or create a new PDF from HTML
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");
// Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;
// Edit file security settings
// Make the PDF read-only, disallow copying & pasting, and disallow printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// Change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
using IronPdf;
using System;
// Open an encrypted file or create a new PDF from HTML
var pdf = PdfDocument.FromFile("encrypted.pdf", "password");
// Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto";
pdf.MetaData.Keywords = "SEO, Friendly";
pdf.MetaData.ModifiedDate = DateTime.Now;
// Edit file security settings
// Make the PDF read-only, disallow copying & pasting, and disallow printing
pdf.SecuritySettings.RemovePasswordsAndEncryption();
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key");
pdf.SecuritySettings.AllowUserAnnotations = false;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;
pdf.SecuritySettings.AllowUserFormData = false;
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights;
// Change or set the document encryption password
pdf.Password = "my-password";
pdf.SaveAs("secured.pdf");
Imports IronPdf
Imports System
' Open an encrypted file or create a new PDF from HTML
Private pdf = PdfDocument.FromFile("encrypted.pdf", "password")
' Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now
' Edit file security settings
' Make the PDF read-only, disallow copying & pasting, and disallow printing
pdf.SecuritySettings.RemovePasswordsAndEncryption()
pdf.SecuritySettings.MakePdfDocumentReadOnly("secret-key")
pdf.SecuritySettings.AllowUserAnnotations = False
pdf.SecuritySettings.AllowUserCopyPasteContent = False
pdf.SecuritySettings.AllowUserFormData = False
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.FullPrintRights
' Change or set the document encryption password
pdf.Password = "my-password"
pdf.SaveAs("secured.pdf")
Przykład NReco.PdfGenerator: NReco.PdfGenerator nie obsługuje natywnie szyfrowania PDF, ponieważ fokus tej biblioteki jest głównie na obsługę konwersji HTML na PDF.
IronPDF oferuje proste, ale potężne narzędzie do szyfrowania PDF-ów. Z IronPDF, będziesz miał pełną kontrolę nad całym procesem, w tym nad ustawieniami zabezpieczeń. NReco.PdfGenerator jednakże nie posiada funkcji szyfrowania natywnego, więc jeżeli chcesz zaszyfrować swój plik PDF po użyciu NReco.PdfGenerator do jego konwersji, potrzebne będą dodatkowe biblioteki, które potrafią obsłużyć szyfrowanie PDF.
Więcej przykładów szyfrowania znajdziesz w IronPDF How-To Guide na ten temat.
Redagowanie treści PDF
Przykład IronPDF:
using IronPdf;
// Load the PDF document
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact the word 'are' on all pages of the document
pdf.RedactTextOnAllPages("are");
// Save the redacted PDF
pdf.SaveAs("redacted.pdf");
using IronPdf;
// Load the PDF document
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact the word 'are' on all pages of the document
pdf.RedactTextOnAllPages("are");
// Save the redacted PDF
pdf.SaveAs("redacted.pdf");
Imports IronPdf
' Load the PDF document
Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")
' Redact the word 'are' on all pages of the document
pdf.RedactTextOnAllPages("are")
' Save the redacted PDF
pdf.SaveAs("redacted.pdf")
Przykład NReco.PdfGenerator: NReco.PdfGenerator nie obsługuje natywnie redakcji tekstu.
Wymagający jedynie kilku linii kodu, IronPDF dostarcza Ci zwięzłe i łatwe w użyciu narzędzie do redakcji. Ze względu na swoją prostotę, możesz być pewien, że używając funkcji redakcji IronPDF, zwiększysz efektywność swojego miejsca pracy od samego początku. Z drugiej strony, NReco.PdfGenerator wymagałby dodatkowej zewnętrznej biblioteki do obsługi procesu redakcji, ponieważ nie ma natywnego wsparcia dla redakcji PDF.
Więcej przykładów redakcji znajdziesz w IronPDF How-To guide na ten temat.
Podpisywanie dokumentów PDF
Przykład IronPDF:
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
// Instantiate the Chrome PDF Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render HTML as PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with the Exportable flag set
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object and sign the PDF document
var sig = new PdfSignature(cert);
pdf.Sign(sig);
// Save the signed PDF
pdf.SaveAs("signed.pdf");
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
// Instantiate the Chrome PDF Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render HTML as PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with the Exportable flag set
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object and sign the PDF document
var sig = new PdfSignature(cert);
pdf.Sign(sig);
// Save the signed PDF
pdf.SaveAs("signed.pdf");
Imports IronPdf
Imports IronPdf.Signing
Imports System.Security.Cryptography.X509Certificates
' Instantiate the Chrome PDF Renderer
Private renderer As New ChromePdfRenderer()
' Render HTML as PDF
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>foo</h1>")
' Create X509Certificate2 object with the Exportable flag set
Private cert As New X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable)
' Create PdfSignature object and sign the PDF document
Private sig = New PdfSignature(cert)
pdf.Sign(sig)
' Save the signed PDF
pdf.SaveAs("signed.pdf")
Przykład NReco.PdfGenerator: NReco.PdfGenerator nie obsługuje natywnie podpisów cyfrowych.
Funkcja podpisu cyfrowego w IronPDF dostarcza Ci łatwy sposób na automatyzację podpisania PDF-ów. Jego przejrzyste API daje Ci pełną kontrolę nad procesem podpisywania, podczas gdy łatwość wdrożenia oznacza mniej pracy dla Ciebie, jeśli regularnie podpisujesz PDF-y.
NReco.PdfGenerator nie oferuje wsparcia dla cyfrowego podpisywania PDF-ów, ale możesz wykorzystać biblioteki zewnętrzne, takie jak iText, aby to zrobić.
Więcej przykładów podpisywania znajdziesz w IronPDF How-To guide na ten temat.
Stosowanie Znaków Wodnych do Stron PDF
Przykład IronPDF:
using IronPdf;
// Instantiate the renderer and render a PDF from a URL
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
// Apply an HTML-based watermark to the PDF
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
// Save the watermarked PDF
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
using IronPdf;
// Instantiate the renderer and render a PDF from a URL
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
// Apply an HTML-based watermark to the PDF
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
// Save the watermarked PDF
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
Imports IronPdf
' Instantiate the renderer and render a PDF from a URL
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
' Apply an HTML-based watermark to the PDF
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
' Save the watermarked PDF
pdf.SaveAs("C:\Path\To\Watermarked.pdf")
Przykład NReco.PdfGenerator: NReco.PdfGenerator nie obsługuje natywnie znaków wodnych.
Znajomość HTML i CSS może wzbogacić twoje doświadczenie podczas używania narzędzia do znaków wodnych IronPDF. Będziesz miał pełną kontrolę nad procesem wodnokowania. Intuicyjne i łatwe do nauki aspekty kontroli wodnokowania sprawią, że poczujesz się biegły w krótkim czasie.
Jeśli używasz NReco.PdfGenerator i chcesz dodawać znaki wodne do nowo przetworzonych plików PDF, będziesz musiał zainstalować zewnętrzną bibliotekę, taką jak PDFSharp.
Więcej przykładów znaków wodnych znajdziesz w IronPDF How-To guide na ten temat.
Ogniwanie Tekstu i Obrazy na Plik PDF
Przykład IronPDF:
using IronPdf;
using IronPdf.Editing;
// Instantiate the renderer and render a PDF from HTML
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create a text stamper and customize its settings
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Apply text stamp to the PDF
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
using IronPdf;
using IronPdf.Editing;
// Instantiate the renderer and render a PDF from HTML
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create a text stamper and customize its settings
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Apply text stamp to the PDF
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
Imports IronPdf
Imports IronPdf.Editing
' Instantiate the renderer and render a PDF from HTML
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create a text stamper and customize its settings
Private textStamper As New TextStamper() With {
.Text = "Text Stamper!",
.FontFamily = "Bungee Spice",
.UseGoogleFont = True,
.FontSize = 30,
.IsBold = True,
.IsItalic = True,
.VerticalAlignment = VerticalAlignment.Top
}
' Apply text stamp to the PDF
pdf.ApplyStamp(textStamper)
pdf.SaveAs("stampText.pdf")
using IronPdf;
using IronPdf.Editing;
using System;
// Instantiate the renderer and render a PDF from HTML
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create an image stamper with specific settings
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
VerticalAlignment = VerticalAlignment.Top,
};
// Apply image stamp to the PDF
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
using IronPdf;
using IronPdf.Editing;
using System;
// Instantiate the renderer and render a PDF from HTML
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create an image stamper with specific settings
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
VerticalAlignment = VerticalAlignment.Top,
};
// Apply image stamp to the PDF
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
Imports IronPdf
Imports IronPdf.Editing
Imports System
' Instantiate the renderer and render a PDF from HTML
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create an image stamper with specific settings
Private imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top}
' Apply image stamp to the PDF
pdf.ApplyStamp(imageStamper, 0)
pdf.SaveAs("stampImage.pdf")
Przykład NReco.PdfGenerator: NReco.PdfGenerator nie obsługuje natywnie stemplowania HTML.
IronPDF oferuje potężne narzędzia do stemplowania tekstu i obrazów. Dzięki podejściu, które przypomina HTML i CSS, będziesz miał całkowitą kontrolę nad procesem tłoczenia. W przeciwieństwie do tego, NReco.PdfGenerator wymaga zewnętrznej biblioteki, takiej jak iText lub PDFSharp, aby tłoczyć tekst i obrazy na nowo przetworzonych dokumentach PDF.
Więcej przykładów stemplowania znajdziesz w IronPDF How-To guide na ten temat.
Konwersja DOCX na PDF
Przykład IronPDF:
using IronPdf;
// Instantiate the DOCX to PDF Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render a DOCX file as PDF
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the converted PDF
pdf.SaveAs("pdfFromDocx.pdf");
using IronPdf;
// Instantiate the DOCX to PDF Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render a DOCX file as PDF
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the converted PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf
' Instantiate the DOCX to PDF Renderer
Private renderer As New DocxToPdfRenderer()
' Render a DOCX file as PDF
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the converted PDF
pdf.SaveAs("pdfFromDocx.pdf")
Przykład NReco.PdfGenerator: NReco.PdfGenerator nie obsługuje natywnie konwersji DOCX na PDF.
Używając IronPDF, możesz konwertować swoje pliki DOCX do formatu PDF w zaledwie kilku liniach kodu. To narzędzie upraszcza proces implementacji, zapewniając efektywne miejsce pracy bez poświęcania jakości w wynikowych plikach PDF. Z NReco.PdfGenerator nie możesz wykonywać konwersji DOCX na PDF, ponieważ biblioteka koncentruje się głównie na konwersji HTML na PDF. Potrzebna będzie dodatkowa biblioteka, taka jak Apsose.Words, do obsługi konwersji DOCX na PDF.
Więcej przykładów DOCX na PDF znajdziesz w IronPDF How-To guide na ten temat.
Podsumowanie Porównania Funkcji

Ceny i Licencje: IronPDF vs. NReco.PdfGenerator
Ceny i licencje IronPDF
IronPDF posiada różne poziomy i dodatkowe funkcje przy zakupie licencji. Deweloperzy mogą również kupić Iron Suite, który daje dostęp do wszystkich produktów Iron Software w cenie dwóch. Jeśli nie jesteś gotowy, aby kupić licencję, IronPDF oferuje bezpłatną wersję próbną, która trwa 30 dni.
-
Licencje wieczyste: Oferuje szeroką gamę licencji wieczystych w zależności od wielkości zespołu, potrzeb projektu i liczby lokalizacji. Każdy typ licencji zawiera wsparcie e-mailowe.
-
Lite License: Ta licencja kosztuje $999 i wspiera jednego dewelopera, jedną lokalizację oraz jeden projekt.
-
Plus License: Wspierając trzech deweloperów, trzy lokalizacje i trzy projekty, jest to kolejny krok po licencji lite i kosztuje $1,499. Licencja Plus oferuje wsparcie na czacie i wsparcie telefoniczne oprócz podstawowego wsparcia e-mailowego.
-
Professional License: Odpowiednia dla większych zespołów, wspiera dziesięciu deweloperów, dziesięć lokalizacji i dziesięć projektów za $2,999. Oferuje te same kanały wsparcia kontaktowego co wcześniejsze poziomy, ale także zapewnia wsparcie udostępniania ekranu.
-
Redystrybucja bez opłat licencyjnych: Licencja IronPDF oferuje pokrycie redystrybucji bez opłat licencyjnych za dodatkowe $2,999.
-
Niezakłócone wsparcie produktu: Dostęp do bieżących aktualizacji produktu, aktualizacji funkcji zabezpieczeń i wsparcia od ich zespołu inżynierskiego za $1,499/rok lub jednorazowy zakup $2,999 na 5-letni okres wsparcia.
- Iron Suite: Za $2,998, uzyskujesz dostęp do wszystkich produktów Iron Software, w tym IronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrint i IronWebScraper.

NReco.PdfGenerator
-
Wersja darmowa: NReco.PdfGenerator oferuje darmowy konwerter online HTML do PDF.
- Paczka z kodem źródłowym dla przedsiębiorstw: NReco oferuje pakiet z kodem źródłowym PDF Generator dla przedsiębiorstw za 199 USD, który obejmuje licencję komercyjną na redystrybucję, klucz licencyjny dla zaawansowanej wersji pakietu NuGet API/NReco.PdfGenerator LT, rok wsparcia e-mailowego i dostęp do pliku ZIP z kodem źródłowym.
Dokumentacja i wsparcie: IronPDF vs. NReco.PdfGenerator
IronPDF
IronPDF doskonale radzi sobie w dostarczaniu obszernej dokumentacji i wsparcia:
- Obszerna dokumentacja: Rozbudowana i przyjazna dla użytkownika dokumentacja obejmująca wszystkie funkcje.
- Wsparcie 24/5: Aktywne wsparcie inżyniera jest dostępne.
- Samouczki wideo: Krok po kroku przewodniki wideo dostępne na YouTube.
- Forum społeczności: Aktywna społeczność zapewniająca dodatkowe wsparcie.
- Regularne aktualizacje: Miesięczne aktualizacje produktów zapewniające najnowsze funkcje i poprawki bezpieczeństwa.
Aby uzyskać więcej informacji, zapoznaj się z obszerną dokumentacją IronPDF i odwiedź kanał Iron Software na YouTube.
NReco.PdfGenerator
- Dokumentacja API: Zawiera informacje o API, dzięki czemu można poznać, jak działają jego różne elementy.
- Kontakt: Na stronie internetowej zespołu NReco można łatwo znaleźć wszystkie dane kontaktowe, co ułatwia skontaktowanie się z nimi w razie jakichkolwiek problemów lub pytań.
Wsparcie dla nowoczesnych frameworków CSS
Kluczową różnicą między IronPDF a NReco.PdfGenerator jest obsługa nowoczesnych frameworków CSS, takich jak Bootstrap, Tailwind CSS i Foundation.
IronPDF: Pełna obsługa Bootstrap
Silnik renderujący Chromium firmy IronPDF zapewnia pełną obsługę nowoczesnych frameworków CSS:
- Bootstrap 5: Pełne wsparcie dla flexbox i CSS Grid dla układów responsywnych
- Złożone układy: renderuje stronę główną Bootstrap oraz szablony Bootstrap z idealną dokładnością pikselową
- Nowoczesne funkcje: Animacje CSS3, transformacje, przejścia i zapytania medialne
- Frameworki CSS: Bootstrap, Tailwind CSS, Foundation, Bulma działają bezproblemowo
Przykład kodu: Renderowanie treści Bootstrap
using IronPdf;
// Render a Bootstrap 5 layout
var renderer = new ChromePdfRenderer();
// Example: Bootstrap responsive card grid
string bootstrapHtml = @"
<!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 mt-5'>
<h1 class='mb-4'>Product Catalog</h1>
<div class='row g-4'>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product A</h5>
<p class='card-text flex-grow-1'>Modern flexbox-based card layout with Bootstrap 5.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product B</h5>
<p class='card-text flex-grow-1'>Responsive grid adapts to screen size.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product C</h5>
<p class='card-text flex-grow-1'>CSS3 features fully supported.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(bootstrapHtml);
pdf.SaveAs("bootstrap-catalog.pdf");
using IronPdf;
// Render a Bootstrap 5 layout
var renderer = new ChromePdfRenderer();
// Example: Bootstrap responsive card grid
string bootstrapHtml = @"
<!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 mt-5'>
<h1 class='mb-4'>Product Catalog</h1>
<div class='row g-4'>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product A</h5>
<p class='card-text flex-grow-1'>Modern flexbox-based card layout with Bootstrap 5.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product B</h5>
<p class='card-text flex-grow-1'>Responsive grid adapts to screen size.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product C</h5>
<p class='card-text flex-grow-1'>CSS3 features fully supported.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
</div>
</div>
</body>
</html>";
var pdf = renderer.RenderHtmlAsPdf(bootstrapHtml);
pdf.SaveAs("bootstrap-catalog.pdf");
Imports IronPdf
' Render a Bootstrap 5 layout
Dim renderer As New ChromePdfRenderer()
' Example: Bootstrap responsive card grid
Dim bootstrapHtml As String = "
<!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 mt-5'>
<h1 class='mb-4'>Product Catalog</h1>
<div class='row g-4'>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product A</h5>
<p class='card-text flex-grow-1'>Modern flexbox-based card layout with Bootstrap 5.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product B</h5>
<p class='card-text flex-grow-1'>Responsive grid adapts to screen size.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
<div class='col-lg-4 col-md-6'>
<div class='card h-100 shadow'>
<div class='card-body d-flex flex-column'>
<h5 class='card-title'>Product C</h5>
<p class='card-text flex-grow-1'>CSS3 features fully supported.</p>
<button class='btn btn-primary mt-auto'>Learn More</button>
</div>
</div>
</div>
</div>
</div>
</body>
</html>"
Dim pdf = renderer.RenderHtmlAsPdf(bootstrapHtml)
pdf.SaveAs("bootstrap-catalog.pdf")
Powyższy kod wyświetla się idealnie w IronPDF, zachowując wszystkie style Bootstrap, układy flexbox, cienie i responsywne systemy siatek.
NReco.PdfGenerator: Ograniczona obsługa Bootstrap
NReco.PdfGenerator polega na wkhtmltopdf z przestarzałym silnikiem Qt WebKit, który ma znaczące ograniczenia w zakresie nowoczesnych frameworków CSS:
- Brak obsługi flexbox: Bootstrap 4+ w dużym stopniu opiera się na flexbox, którego Qt WebKit nie obsługuje w pełni
- Ograniczona obsługa CSS Grid: nowoczesne układy siatki nie będą wyświetlane poprawnie
- Nieaktualne: Qt WebKit został zaktualizowany po raz ostatni w 2016 roku i nie obsługuje nowoczesnych funkcji CSS3
- Wymagane rozwiązania alternatywne: Programiści muszą korzystać ze starszych wersji Bootstrap (Bootstrap 3 lub wcześniejsze) lub wdrożyć rozwiązania awaryjne oparte na tabelach
Więcej szczegółów na temat wsparcia frameworków CSS i rozwiązywania problemów z renderowaniem flexbox/Bootstrap znajdziesz w Przewodniku CSS Bootstrap & Flexbox.
Wnioski
IronPDF i NReco.PdfGenerator to potężni gracze, którzy zaspokoją wszystkie Twoje potrzeby związane z konwersją HTML na PDF. Jeśli jednak potrzebujesz narzędzia wyposażonego w bogaty zestaw wbudowanych funkcji wykraczających poza zwykłą konwersję HTML do PDF, to IronPDF jest właśnie dla Ciebie.
Dzięki kompleksowemu zestawowi funkcji, łatwej nauce obsługi oraz szerokiej obsłudze nowoczesnych standardów internetowych i kompatybilności międzyplatformowej, IronPDF będzie potężnym dodatkiem do Twojego środowiska pracy. NReco.PdfGenerator, choć niezawodny w przypadku podstawowej konwersji HTML do PDF, nie posiada wielu zaawansowanych funkcji oferowanych przez IronPDF.
Możesz wypróbować 30-dniową bezpłatną wersję próbną, aby sprawdzić dostępne funkcje.
Często Zadawane Pytania
Jak mogę przekonwertować HTML na PDF w języku C#?
Możesz użyć metody RenderHtmlAsPdf biblioteki IronPDF do konwersji ciągów HTML na pliki PDF. Dodatkowo biblioteka IronPDF umożliwia konwersję plików HTML na pliki PDF za pomocą metody RenderHtmlFileAsPdf.
Jakie są główne różnice między IronPDF a NReco.PdfGenerator?
IronPDF oferuje szeroki zakres funkcji, w tym konwersję HTML do PDF, edycję plików PDF, opcje bezpieczeństwa i podpisywanie cyfrowe, co czyni go kompleksowym narzędziem do obróbki plików PDF. Natomiast NReco.PdfGenerator koncentruje się głównie na konwersji HTML do PDF przy użyciu narzędzia WkHtmlToPdf, oferując mniej zaawansowanych funkcji.
Czy mogę korzystać z tych bibliotek PDF w różnych systemach operacyjnych?
Tak, zarówno IronPDF, jak i NReco.PdfGenerator obsługują kompatybilność międzyplatformową. IronPDF może być używany w systemach Windows, Linux i macOS oraz obsługuje .NET Core, .NET Standard i .NET Framework. Podobnie NReco.PdfGenerator obsługuje platformy Windows, Linux i macOS.
Czy IronPDF obsługuje szyfrowanie plików PDF i podpisy cyfrowe?
Tak, IronPDF oferuje rozbudowane funkcje szyfrowania plików PDF i podpisów cyfrowych. Dzięki temu programiści mogą zabezpieczyć swoje pliki PDF i dodawać podpisy cyfrowe w celu uwierzytelnienia.
Jakie opcje licencyjne są dostępne dla IronPDF?
IronPDF oferuje wiele opcji licencyjnych, w tym licencje Lite, Plus i Professional. Dostępny jest również pakiet Iron Suite, który zapewnia dostęp do wszystkich produktów Iron Software, a do oceny dostępna jest 30-dniowa bezpłatna wersja próbna.
Czy dostępna jest bezpłatna wersja programu NReco.PdfGenerator?
Tak, NReco.PdfGenerator oferuje bezpłatny internetowy konwerter HTML na PDF. Do bardziej zaawansowanego wykorzystania dostępny jest do nabyćia pakiet kodu źródłowego dla Enterprise.
Która biblioteka zapewnia lepsze wsparcie i dokumentację?
IronPDF oferuje obszerną dokumentację, samouczki wideo, obsługę klienta dostępną 24 godziny na dobę przez 5 dni w tygodniu, forum społecznościowe oraz regularne aktualizacje oprogramowania. NReco.PdfGenerator udostępnia dokumentację API oraz dane kontaktowe działu wsparcia.
Czy IronPDF może konwertować pliki DOCX do formatu PDF?
Tak, IronPDF może konwertować pliki DOCX do formatu PDF, zapewniając wysoką jakość i zachowując wierność dokumentu podczas procesu konwersji.
Jakie są zalety używania IronPDF do konwersji HTML do PDF?
IronPDF obsługuje nowoczesne standardy internetowe zapewniające wierne renderowanie plików PDF, co gwarantuje pliki o idealnej jakości. Zawiera również funkcje takie jak ładowanie zasobów HTML i kompleksowe ustawienia zabezpieczeń PDF, co czyni go solidnym wyborem do konwersji HTML na PDF.
Czy NReco.PdfGenerator obsługuje funkcje takie jak redagowanie plików PDF lub dodawanie znaków wodnych?
Nie, NReco.PdfGenerator nie obsługuje natywnie redagowania ani znakowania wodnego plików PDF. Jednak IronPDF zapewnia wbudowaną obsługę tych funkcji, umożliwiając łatwe redagowanie i znakowanie wodne dokumentów PDF.
Jakie są typowe zastosowania IronPDF i NReco.PdfGenerator?
IronPDF jest powszechnie używany do konwersji HTML na PDF, szyfrowania plików PDF, podpisywania cyfrowego oraz edycji istniejących plików PDF. NReco.PdfGenerator służy przede wszystkim do konwersji treści HTML do formatu PDF.



