Porównanie IronPDF i QuestPDF
Full Comparison
Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against QuestPDF on pricing, HTML support, and licensing.
To porównanie obejmuje IronPDF iQuestPDF— dwie .NET biblioteki PDF o zasadniczo różnych modelach generowania — pod względem funkcji, wsparcia dla różnych platform oraz licencjonowania.
Co to sąIronPDFi QuestPDF?
IronPDF to biblioteka .NET, która obejmuje konwersję HTML do PDF, bezpieczeństwo dokumentów, formularze interaktywne, podpisy cyfrowe, znakowanie wodne i manipulację treścią w jednym pakiecie NuGet. Wbudowany silnik Chromium radzi sobie z nowoczesnym HTML5, CSS3 i JavaScript bez potrzeby zewnętrznych zależności.
QuestPDF to otwartoźródłowa biblioteka .NET oparta na wyłącznie kodowym, płynnym API do generowania PDF. Jest doskonałym rozwiązaniem dla zespołów, które wolą budować układy dokumentów programowo, bez szablonów HTML czy własnych formatów.
Kompatybilność między platformami
IronPDF
IronPDF obsługuje szeroką gamę platform, gwarantując, że możesz pracować w preferowanym środowisku. Oto rozbicie jego kompatybilności:
-
Wersje .NET:
- (C#, VB.NET, F#)
- .NET Core (8, 7, 6, 5 i 3.1+)
- .NET Standard (2.0+)
- .NET Framework (4.6.2+)
-
Srodowiska aplikacji:IronPDFdziała w środowiskach aplikacji, takich jak Windows, Linux, Mac, Docker, Azure i AWS
-
IDEs: Działa z IDE, takimi jak Microsoft Visual Studio oraz JetBrains Rider & ReSharper
- Systemy operacyjne i procesory: Obsługuje różne systemy operacyjne i procesory, w tym Windows, Mac, Linux, x64, x86, ARM
QuestPDF
QuestPDF oferuje silną kompatybilność międzyplatformową, co oznacza, że bez względu na to, na jakiej platformie pracujesz, prawdopodobnie będziesz mógł zaimplementowaćQuestPDFw swoim środowisku pracy.
-
Wersje .NET:
- .NET Core (3.1+)
- .NET Standard (2.0+)
- .NET Framework (4.6.1+)
-
Systemy: Działa na różnych systemach operacyjnych i środowiskach chmurowych, takich jak Windows, Linux, macOS, Azure i AWS.
- IDEs: Możesz użyćQuestPDFz dowolnym IDE, którego używasz w swoim środowisku pracy, czy to Visual Studio, VS Code, JetBrains Rider, czy coś innego.
Porównanie funkcji: Funkcjonalność PDF wIronPDFvs. QuestPDF
Poniższa tabela podsumowuje, jakIronPDFiQuestPDFporównują się pod względem kluczowych możliwości omówionych w tym artykule:
| Funkcja | IronPDF | QuestPDF |
|---|---|---|
| Konwersja HTML do PDF | Obsługiwane (silnik Chromium) | Nie obejmuje |
| Programowa generacja PDF | Obsługiwane | Obsługiwane (wyłącznie silnik układu kodowego) |
| Szyfrowanie PDF i zabezpieczenia | Obsługiwane | Nie obejmuje |
| Redakcja zawartości | Obsługiwane | Nie obejmuje |
| Podpisy cyfrowe | Obsługiwane | Nie obejmuje |
| Znak wodny | Obsługiwane (HTML/CSS) | Nie obejmuje |
| Znakowanie tekstu i obrazów | Obsługiwane | Obsługiwane (oparte na płótnie) |
| Konwersja DOCX do PDF | Obsługiwane | Nie obejmuje |
Bezpłatna 30-dniowa wersja próbnaIronPDFobejmuje dostęp do każdej funkcji w tym porównaniu.IronPDFiQuestPDFoferują różne zestawy funkcji dostosowane do różnych potrzeb użytkowników, dlatego wybór najlepszej biblioteki zależy od tego, co planujesz robić z PDF, z którymi pracujesz. Poniżej porównanie ich podstawowych funkcjonalności:
Funkcje IronPDF
-
Konwersja PDF:IronPDFradzi sobie z konwersją HTML do PDF. Dzięki pełnemu wsparciu dla nowoczesnych standardów internetowych, możesz być pewny, żeIronPDFzawsze zwróci perfekcyjnie dopasowane PDF-y z Twojej zawartości HTML. Czy szukasz konwersji innych formatów plików na PDF?IronPDFwspiera konwersję wielu różnych formatów plików, w tym DOCX do PDF, RTF do PDF, Obraz do PDF, i więcej.
-
Generowanie PDF: ZIronPDFmożesz przeprowadzać generowanie dokumentów PDF z URL-i, plików ASPX lub HTML-strings.
-
Znakowanie wodne: Zastosuj tekstowe i obrazowe znaki wodne do plików PDF.
-
Funkcje zabezpieczające: ZIronPDFmasz pewność, że każda wrażliwa plik PDF jest zabezpieczona dzięki jego funkcjom zabezpieczającym. UżyjIronPDFdo szyfrowania plików PDF, ustawiania haseł i uprawnień dla plików PDF.
- Funkcje edycji PDF: ZIronPDFmożesz z łatwością edytować pliki PDF.IronPDFoferuje 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.
Aby uzyskać bardziej szczegółową listę funkcji, odwiedź Stronę Funkcji IronPDF.
Funkcje QuestPDF
-
Projektowanie dokumentów za pomocą C#: Użyj kodu C#, aby zaprojektować i utworzyć pliki PDF w podejściu wyłącznie kodowym.
-
Wszechstronny silnik układu: Wszechstronny silnik układuQuestPDFzapewnia, że możesz generować dokumenty PDF z łatwością, daje pełną kontrolę nad procesem generowania i strukturą dokumentu, zapewnia pełne wsparcie dla paginacji i optymalizuje wizualną strukturę dokumentu.
-
Przewidywalne elementy strukturalne: UżywajQuestPDFdo dodawania szeregu elementów strukturalnych do twojego pliku PDF, w tym tekstu, obrazów, obramowań i tabel.
-
Zdolność do automatycznego odświeżania: Będziesz mógł mieć podgląd dokumentu w czasie rzeczywistym bez rekompilacji kodu.
- Konserwacja: Efektywnie zarządzaj kontrolą wersji, aby naprawiać błędy lub odzyskiwać starsze wersje, efektywna konserwacja oferowana przezQuestPDFzapewnia, że nigdy nie tracisz czasu na złożone implementacje HTML.
JakQuestPDFiIronPDFradzą sobie z typowymi zadaniami PDF?
Zanim wybierzesz, która biblioteka PDF jest dla ciebie odpowiednia, przyjrzyjmy się niektórym powszechnym przypadkom użycia dla różnych celów, jakie możesz mieć dla biblioteki PDF, porównując, jakIronPDFiQuestPDFradzą sobie z tymi zadaniami.
Konwersja HTML do PDF
Konwersja HTML do PDF za pomocą IronPDF:
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: images, CSS and JavaScript.
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Imports IronPdf
' Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = True
' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()
' Create a PDF from an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
pdf.SaveAs("output.pdf")
' Advanced Example with HTML Assets
' Load external html assets: images, CSS and JavaScript.
Dim myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
QuestPDF:
QuestPDF nie jest zaprojektowany do konwersji HTML do PDF — jego architektura oparta jest na programowej kompozycji dokumentów zamiast transformacji formatu pliku, w tym renderowania JavaScript. Zespoły, które muszą konwertować istniejące treści HTML, zazwyczaj łącząQuestPDFz oddzielną biblioteką renderowania.
Dla projektów, gdzie konwersja HTML do PDF jest kluczowym wymaganiem, Narzędzie HTML do PDF IronPDF wykonuje tę operację jako operację priorytetową, korzystając z wbudowanego silnika Chromium.
Szyfrowanie plików PDF
Szyfrowanie PDF za pomocą IronPDF:
using IronPdf;
using System;
//Open an Encrypted File, alternatively 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;
//The following code makes a PDF read-only and will disallow copy & paste and 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, alternatively 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;
//The following code makes a PDF read-only and will disallow copy & paste and 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, alternatively create a new PDF from Html
Dim pdf = PdfDocument.FromFile("encrypted.pdf", "password")
'Edit file metadata
pdf.MetaData.Author = "Satoshi Nakamoto"
pdf.MetaData.Keywords = "SEO, Friendly"
pdf.MetaData.ModifiedDate = DateTime.Now
'The following code makes a PDF read-only and will disallow copy & paste and 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")
QuestPDF:
Szyfrowanie PDF jest poza obecnym zakresem QuestPDF, chociaż obsługuje modyfikację metadanych dokumentu. Zespoły, które potrzebują szyfrowania, zazwyczaj integrują dodatkową bibliotekę równolegle z QuestPDF.
Jeśli szyfrowanie dokumentów lub dostosowanie ustawień zabezpieczeń są rutynowymi częściami twojego przepływu pracy,IronPDFzawiera te funkcje zabezpieczenia PDF bezpośrednio — bez potrzeby dodatkowych pakietów.
Redagowanie treści PDF
Redagowanie treści za pomocą IronPDF:
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
using IronPdf;
PdfDocument pdf = PdfDocument.FromFile("novel.pdf");
// Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are");
pdf.SaveAs("redacted.pdf");
Imports IronPdf
Private pdf As PdfDocument = PdfDocument.FromFile("novel.pdf")
' Redact 'are' phrase from all pages
pdf.RedactTextOnAllPages("are")
pdf.SaveAs("redacted.pdf")
QuestPDF:
Silnik układuQuestPDFkoncentruje się na generowaniu dokumentów, dlatego redagowanie treści pozostaje poza jego architektoniczną powierzchnią. Zespoły, które potrzebują redagowania, zazwyczaj dodają dodatkową bibliotekę, taką jak iTextSharp, równolegle z QuestPDF.
IronPDF obsługuje redagowanie w jednym wywołaniu metody, co eliminuje potrzebę koordynowania się z wieloma bibliotekami w celu wykonania tego zadania.
Podpisywanie plików PDF
Podpisywanie cyfrowe za pomocą IronPDF:
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object
var sig = new PdfSignature(cert);
// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>foo</h1>");
// Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable);
// Create PdfSignature object
var sig = new PdfSignature(cert);
// Sign PDF document
pdf.Sign(sig);
pdf.SaveAs("signed.pdf");
Imports IronPdf
Imports IronPdf.Signing
Imports System.Security.Cryptography.X509Certificates
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>foo</h1>")
' Create X509Certificate2 object with X509KeyStorageFlags set to Exportable
Private cert As New X509Certificate2("IronSoftware.pfx", "123456", X509KeyStorageFlags.Exportable)
' Create PdfSignature object
Private sig = New PdfSignature(cert)
' Sign PDF document
pdf.Sign(sig)
pdf.SaveAs("signed.pdf")
QuestPDF:
Podpisywanie cyfrowe nie jest częścią zestawu funkcji QuestPDF. Typowym obejściem jest wygenerowanie PDF za pomocą QuestPDF, a następnie przekazanie go do oddzielnej biblioteki w celu podpisania certyfikatami PFX — dodatkowy krok, który dodaje zależność do twojego procesu.
Dla zespołów, które potrzebują podpisu jako części przepływu pracy generowania, Funkcja Podpisu IronPDF zapewnia podpisy cyfrowe oparte na certyfikatach jako operację wbudowaną.
Nakładaj znaki wodne na swoje PDF
Zastosowanie znakowania wodnego za pomocą IronPDF:
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
using IronPdf;
// Stamps a Watermark onto a new or existing PDF
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf");
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center);
pdf.SaveAs(@"C:\Path\To\Watermarked.pdf");
Imports IronPdf
' Stamps a Watermark onto a new or existing PDF
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderUrlAsPdf("https://www.nuget.org/packages/IronPdf")
pdf.ApplyWatermark("<h2 style='color:red'>SAMPLE</h2>", 30, IronPdf.Editing.VerticalAlignment.Middle, IronPdf.Editing.HorizontalAlignment.Center)
pdf.SaveAs("C:\Path\To\Watermarked.pdf")
QuestPDF:
Znakowanie wodne jest poza zakresem QuestPDF. PonieważQuestPDFkoncentruje się na kompozycji dokumentów od podstaw, nakładanie treści na istniejące PDF nie jest częścią jego projektu.
API znakowania wodnegoIronPDFakceptuje ciągi HTML/CSS, dając pełną kontrolę nad stylowaniem pozycji znaku wodnego, przezroczystością i wyglądem bez dodatkowych bibliotek.
Stemplowanie obrazu, HTML, tekstu
IronPDF Stemplowanie Tekstu i Obrazów:
using IronPdf;
using IronPdf.Editing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create text stamper
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
using IronPdf;
using IronPdf.Editing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>");
// Create text stamper
TextStamper textStamper = new TextStamper()
{
Text = "Text Stamper!",
FontFamily = "Bungee Spice",
UseGoogleFont = true,
FontSize = 30,
IsBold = true,
IsItalic = true,
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the text stamper
pdf.ApplyStamp(textStamper);
pdf.SaveAs("stampText.pdf");
// Create image stamper
ImageStamper imageStamper = new ImageStamper(new Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg"))
{
VerticalAlignment = VerticalAlignment.Top,
};
// Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0);
pdf.SaveAs("stampImage.pdf");
Imports IronPdf
Imports IronPdf.Editing
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Example HTML Document!</h1>")
' Create text stamper
Private textStamper As New TextStamper() With {
.Text = "Text Stamper!",
.FontFamily = "Bungee Spice",
.UseGoogleFont = True,
.FontSize = 30,
.IsBold = True,
.IsItalic = True,
.VerticalAlignment = VerticalAlignment.Top
}
' Stamp the text stamper
pdf.ApplyStamp(textStamper)
pdf.SaveAs("stampText.pdf")
' Create image stamper
Dim imageStamper As New ImageStamper(New Uri("https://ironpdf.com/img/svgs/iron-pdf-logo.svg")) With {.VerticalAlignment = VerticalAlignment.Top}
' Stamp the image stamper
pdf.ApplyStamp(imageStamper, 0)
pdf.SaveAs("stampImage.pdf")
QuestPDF:
using QuestPDF.Fluent;
using QuestPDF.Infrastructure;
using QuestPDF.Helpers;
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(2, Unit.Centimetre);
page.PageColor(Colors.White);
page.DefaultTextStyle(x => x.FontSize(12));
// Adding Header and Footer for context
page.Header()
.Text("Header Text")
.FontSize(20)
.Bold()
.AlignCenter();
page.Footer()
.Text("Footer Text")
.FontSize(12)
.AlignCenter();
// Adding main content and stamps
page.Content()
.Canvas(canvas =>
{
// Main content
canvas.DrawText("This is the main content of the page.", x =>
{
x.Translate(50, 50);
x.FontSize(12);
});
// Stamped text
canvas.DrawText("Stamped Text", x =>
{
x.Translate(200, 200); // Position the text
x.FontSize(30);
x.Bold();
x.FontColor(Colors.Red);
});
// Stamped image
canvas.DrawImage("path/to/image.png", x =>
{
x.Translate(200, 300); // Position the image
x.Width(100); // Set the width of the image
});
});
});
}).GeneratePdf("output.pdf");
using QuestPDF.Fluent;
using QuestPDF.Infrastructure;
using QuestPDF.Helpers;
Document.Create(container =>
{
container.Page(page =>
{
page.Size(PageSizes.A4);
page.Margin(2, Unit.Centimetre);
page.PageColor(Colors.White);
page.DefaultTextStyle(x => x.FontSize(12));
// Adding Header and Footer for context
page.Header()
.Text("Header Text")
.FontSize(20)
.Bold()
.AlignCenter();
page.Footer()
.Text("Footer Text")
.FontSize(12)
.AlignCenter();
// Adding main content and stamps
page.Content()
.Canvas(canvas =>
{
// Main content
canvas.DrawText("This is the main content of the page.", x =>
{
x.Translate(50, 50);
x.FontSize(12);
});
// Stamped text
canvas.DrawText("Stamped Text", x =>
{
x.Translate(200, 200); // Position the text
x.FontSize(30);
x.Bold();
x.FontColor(Colors.Red);
});
// Stamped image
canvas.DrawImage("path/to/image.png", x =>
{
x.Translate(200, 300); // Position the image
x.Width(100); // Set the width of the image
});
});
});
}).GeneratePdf("output.pdf");
Imports QuestPDF.Fluent
Imports QuestPDF.Infrastructure
Imports QuestPDF.Helpers
Document.Create(Sub(container)
container.Page(Sub(page)
page.Size(PageSizes.A4)
page.Margin(2, Unit.Centimetre)
page.PageColor(Colors.White)
page.DefaultTextStyle(Function(x) x.FontSize(12))
' Adding Header and Footer for context
page.Header().Text("Header Text").FontSize(20).Bold().AlignCenter()
page.Footer().Text("Footer Text").FontSize(12).AlignCenter()
' Adding main content and stamps
page.Content().Canvas(Sub(canvas)
' Main content
canvas.DrawText("This is the main content of the page.", Sub(x)
x.Translate(50, 50)
x.FontSize(12)
End Sub)
' Stamped text
canvas.DrawText("Stamped Text", Sub(x)
x.Translate(200, 200) ' Position the text
x.FontSize(30)
x.Bold()
x.FontColor(Colors.Red)
End Sub)
' Stamped image
canvas.DrawImage("path/to/image.png", Sub(x)
x.Translate(200, 300) ' Position the image
x.Width(100) ' Set the width of the image
End Sub)
End Sub)
End Sub)
End Sub).GeneratePdf("output.pdf")
Zarówno IronPDF, jak iQuestPDFobsługują stemplowanie tekstu i obrazów. PodejścieIronPDFwymaga około 15 linii dla tego samego wyniku, który zająłby API oparte na płótnieQuestPDFokoło 45 linii, ponieważQuestPDFwymaga jawnego pozycjonowania współrzędnych dla każdego elementu. Aby uzyskać więcej informacji o edycji PDF i manipulacji dokumentami IronPDF, zobacz pełny tutorial.
DOCX do PDF
Konwersja DOCX do PDF za pomocą IronPDF:
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
using IronPdf;
// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();
// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");
// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
Imports IronPdf
' Instantiate Renderer
Private renderer As New DocxToPdfRenderer()
' Render from DOCX file
Private pdf As PdfDocument = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx")
' Save the PDF
pdf.SaveAs("pdfFromDocx.pdf")
QuestPDF:
QuestPDF nie zawiera rendereru DOCX do PDF. Osiągnięcie tej konwersji zQuestPDFoznacza wprowadzenie dodatkowej zależności, takiej jak Aspose.Words lub Syncfusion, do obsługi etapu transformacji.
IronPDF zawiera konwersję DOCX do PDF jako wbudowany renderer, a zarządzanie procesem wymaga użycia tylko jednego pakietu.
Podsumowanie porównania przykładów kodowania

Ceny i licencjonowanie:IronPDFvs.QuestPDFLibrary
Ceny i licencje IronPDF
Zobacz Opcje licencji IronPDF dla różnych poziomów i dodatkowych funkcji. Programiści mogą również zakupić Dostęp do Iron Suite, który obejmuje wszystkie produkty Iron Software za cenę dwóch.IronPDFoferuje również bezpłatną wersję próbną na 30 dni.
-
Licencje wieczyste: Oferuje szereg licencji wieczystych w zależności od wielkości zespołu, potrzeb projektu i liczby lokalizacji. Każdy typ licencji zawiera wsparcie e-mailowe.
-
Licencja Lite: Ta licencja kosztuje $799 i dzięki niej obsługiwany jest jeden deweloper, jedna lokalizacja i jeden projekt.
-
Licencja Plus: Obsługując trzech deweloperów, trzy lokalizacje i trzy projekty, to kolejny krok od licencji lite, który kosztuje $1,199. Licencja Plus oferuje wsparcie na czacie i wsparcie telefoniczne oprócz podstawowego wsparcia e-mailowego.
-
Licencja Professional: Odpowiednia dla większych zespołów, obsługująca dziesięciu deweloperów, dziesięć lokalizacji i dziesięć projektów za $2,399. Oferuje te same kanały wsparcia, co poprzednie poziomy, ale również oferuje wsparcie przy udostępnianiu ekranu.
-
Redystrybucja bez oplat licencyjnych: LicencjaIronPDFoferuje pokrycie redystrybucyjne bez oplat licencyjnych za dodatkowe $2,399.
-
Nieprzerwany wsparcie produktu: Oferuje ciągłe aktualizacje produktów, aktualizacje funkcji zabezpieczenia oraz wsparcie od zespołu inżynieryjnego za $1,199/rok lub jednorazowy zakup za $2,399 na pokrycie pięciu lat.
- Iron Suite: $1,498 za dostęp do wszystkich produktów Iron Software, w tym IronPDF, IronOCR, IronWord, IronXL, IronBarcode, IronQR, IronZIP, IronPrint i IronWebScraper.

QuestPDF
-
Społeczność:QuestPDFjest oprogramowaniem open-source dostępne na licencji MIT, a jego licencja społecznościowa jest darmowa. Korzystając z tej licencji, możesz swobodnie modyfikować i dystrybuować swoje projekty za pomocą tego oprogramowania zgodnie z jego modelem licencjonowania.
-
Profesjonalna: Za 699 USD licencja profesjonalna obejmuje zespoły do 10 programistów pracujących nad projektami z wykorzystaniem QuestPDF.
- Enterprise: Ostatni poziom licencjonowania to $2,399 i obejmuje nieograniczoną liczbę deweloperów.
Poza kosztem licencji, całkowity koszt projektu obejmuje godziny deweloperów spędzone na skompletowaniu osobnych bibliotek do szyfrowania, podpisów cyfrowych, redakcji i konwersji formatów — funkcjonalności, któreQuestPDFnie obejmuje w swojej skupionej formie. Dla zespołów oceniających koszty w perspektywie wieloletniego cyklu życia projektu koszty integracji i utrzymania często przewyższają różnicę między licencjami open source a komercyjnymi.
Dokumentacja i wsparcie:IronPDFvs. QuestPDF
IronPDF
IronPDF zapewnia obszerną dokumentację i komercyjne wsparcie:
-
Wszechstronna Dokumentacja: Obszerna i przyjazna dla użytkownika dokumentacja obejmująca wszystkie funkcje.
-
24/5 Wsparcie: Aktywne wsparcie inżynierów jest dostępne.
-
Samouczki wideo: Krok po kroku przewodniki wideo dostępne na YouTube.
-
Forum społecznościowe: Zaangażowana społeczność dla dodatkowego wsparcia.
- Regularne aktualizacje: Miesięczne aktualizacje produktów, aby zapewnić najnowsze funkcje i ulepszenia zabezpieczeń.
Aby uzyskać więcej informacji, sprawdź Dokumentację IronPDF i odwiedź Kanał YouTube IronSoftware.
QuestPDF
-
Dokumentacja:QuestPDFoferuje obszerną dokumentację na swojej stronie internetowej, a także szybkie przewodniki startowe i przykłady kodu.
-
Społeczność: Jako projekt otwartoźródłowy,QuestPDFw dużej mierze opiera się na wkładach społeczności w promocję i znajdywanie błędów, zachęcając do aktywnej i wspierającej społeczności deweloperów.
- YouTube Videos:QuestPDFma rosnącą obecność na YouTube, publikując filmy, które pomagają deweloperom nauczyć się korzystać z różnych funkcji biblioteki.
QuestPDF korzysta z aktywnej społeczności open-source, która przyczynia się do dokumentacji i rozwiązywania problemów. Zespoły, które wymagają gwarantowanych czasów odpowiedzi lub dedykowanego wsparcia technicznego, mogą uznać komercyjny model wsparciaIronPDFza lepsze dopasowanie do środowisk produkcyjnych.
Którą bibliotekę wybrać?
IronPDF iQuestPDFoferują wartościowe narzędzia do generowania PDF w .NET, zaspokajając różne potrzeby deweloperskie. Wybór najlepszego rozwiązania zależy od twoich potrzeb i budżetu. QuestPDF, będąc oprogramowaniem open-source i prostym w użyciu, odpowiada deweloperom szukającym rozwiązania skupionego na kodzie i lekkiego. Jeśli nie potrzebujesz wszystkich dodatkowych funkcji, które oferujeIronPDFi chcesz po prostu darmową, prostą bibliotekę PDF,QuestPDFmoże być dla ciebie odpowiednia.
IronPDF dostarczany jest jako pojedynczy pakiet NuGet, który zawiera konwersję HTML do PDF, szyfrowanie, redakcję, podpisy cyfrowe, znakowanie wodne i konwersję DOCX do PDF — funkcjonalności, które wymagałyby wielu dodatkowych bibliotek podczas pracy z QuestPDF.
Dla zespołów, których wymagania wykraczają poza generowanie dokumentów do zabezpieczeń, konwersji formatów i postprocesingu,IronPDFkonsoliduje te operacje w jednej bibliotece z dedykowanym komercyjnym wsparciem i obszerną dokumentacją.
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. Możesz również konwertować pliki HTML na pliki PDF za pomocą metody RenderHtmlFileAsPdf.
Jakie są korzyści z używania IronPDF w aplikacjach enterprise?
IronPDF jest idealny dla aplikacji enterprise ze względu na rozbudowany zestaw funkcji, w tym konwersję HTML do PDF, zabezpieczenia dokumentów, interaktywne formularze i możliwości edycji. Wspiera wiele platform i oferuje solidne funkcje zabezpieczeń.
Czy mogę używać IronPDF do podpisywania cyfrowego plików PDF?
Tak, IronPDF wspiera cyfrowe podpisywanie plików PDF. Pozwala developerom na podpisywanie dokumentów programowo za pomocą certyfikatów X.509.
Jakie platformy wspiera IronPDF?
IronPDF wspiera różne platformy, w tym .NET Core, .NET Standard, i .NET Framework. Jest kompatybilny ze środowiskami takimi jak Windows, Linux, Mac, Docker, Azure i AWS.
Czy istnieje sposób na szyfrowanie plików PDF za pomocą IronPDF?
Tak, IronPDF zapewnia funkcje szyfrowania, które pozwalają ustawić hasła i zarządzać uprawnieniami, aby zapewnić bezpieczeństwo dokumentów.
Jaka jest kluczowa różnica pomiędzy IronPDF a QuestPDF?
Kluczowa różnica to fakt, że IronPDF oferuje rozbudowane funkcje, w tym konwersję HTML do PDF i zabezpieczenia dokumentów, co czyni go odpowiednim dla złożonych aplikacji, podczas gdy QuestPDF to prostsza, open-source'owa biblioteka skupiona na łatwości użycia, bez natywnego wsparcia dla konwersji HTML.
Czy IronPDF oferuje jakieś zasoby wsparcia?
IronPDF oferuje wszechstronne zasoby wsparcia, w tym szczegółową dokumentację, wsparcie inżynierskie 24/5, samouczki wideo, forum społeczności oraz regularne aktualizacje produktu, aby wspierać developerów.
Czy mogę używać IronPDF do dodawania znaków wodnych do plików PDF?
Tak, IronPDF pozwala na dodawanie znaków wodnych do dokumentów PDF. Może to być zrobione programowo w celu poprawy prezentacji i bezpieczeństwa dokumentów.
Jakie opcje licencyjne są dostępne dla IronPDF?
IronPDF oferuje kilka opcji licencyjnych, w tym Lite, Plus, Professional i Redystrybucję bez Oplat Licencyjnych, dostosowane do różnych potrzeb biznesowych i budżetów.
Czy QuestPDF to dobra alternatywa dla kosztowo efektywnego generowania PDF?
Tak, QuestPDF to darmowa, open-source'owa biblioteka idealna dla developerów szukających kosztowo efektywnego rozwiązania dla lekkich projektów generowania PDF.



