
Jak oddzielić strony PDF
Niezaleznie od tego, czy tworzysz zaawansowane rozwiązanie dla przedsiebiorstw, generujesz faktury w aplikacji SaaS, czy eksportujesz raporty z pulpitu nawigacyjnego .NET, zawsze pojawia sie jedno pytanie:
"Której biblioteki C# PDF powinienem uzyc?"
W ekosystemie .NET wyróżniają się trzy biblioteki: PDFSharp, iText oraz IronPDF. Kazda z nich ma swoje mocne strony, wady i przypadki użycia. Ale która z nich jest naprawde najlepszym wyborem dla nowoczesnych programistów pracujacych z plikami PDF w środowisku .NET 6+, .NET Core lub nawet tradycyjnym .NET Framework?
Ten kompleksowy przewodnik zaglebia sie w kazda biblioteke, porównujac funkcje, instalacje, uzytecznosc i jakosc wyjscia. Przejdziemy przez przykładówe kody, omówimy wady i zalety kazdej biblioteki i zaproponujemy praktyczne rekomendacje oparte na rzeczywistych potrzebach deweloperskich.
Zacznijmy.
Przegląd PDFSharp

Czym jest PDFSharp?
PDFSharp to biblioteka open source, która umożliwia deweloperom tworzenie i przetwarzanie dokumentów PDF w locie za pomocą C#. Obsługuje tworzenie PDF od podstaw oraz możliwość modyfikacji istniejących plików PDF. Jego czysty, obiektowy interfejs API jest idealny dla programistów szukajacych lekkiego i łatwego do integracji rozwiązania.
Pomimo, ze jest napedzany przez spolecznosc, cieszy sie lojalnoscia użytkowników i pozostaje wyborem dla prostych zadań PDF, które nie wymagaja zaawansowanego renderowania lub dynamicznej zawartości z HTML.
Instalacja PDFSharp
Instalacja jest prosta dzięki NuGet:
Jest równiez kompatybilny z PdfSharpCore dla srodowisk .NET Core.
Przykladowy kod: Tworzenie prostego pliku PDF
using PdfSharp.Pdf;
using PdfSharp.Drawing;
// Create a new PDF document
var document = new PdfDocument();
document.Info.Title = "Created with PDFsharp";
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyle.Bold);
// Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
// Save the document
document.Save("HelloWorld.pdf");Imports PdfSharp.Pdf
Imports PdfSharp.Drawing
' Create a new PDF document
Private document = New PdfDocument()
document.Info.Title = "Created with PDFsharp"
' Create an empty page
Dim page As PdfPage = document.AddPage()
' Get an XGraphics object for drawing
Dim gfx As XGraphics = XGraphics.FromPdfPage(page)
' Create a font
Dim font As New XFont("Verdana", 20, XFontStyle.Bold)
' Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
' Save the document
document.Save("HelloWorld.pdf")Wynik

Zalety i Wady PDFSharp
Zalety:
- Darmowa i open source biblioteka PDF (licencja MIT)
- Świetna do niskopoziomowego rysowania i prostych dokumentów tekstowych PDF
- Lekka i łatwa do zainstalowania
Wady:
- Brak natywnej obsługi HTML na PDF
- Ograniczone możliwości renderowania
- Niez aktywnie utrzymywana dla zaawansowanych przypadków użycia
Szczegółowa analiza iText

Czym jest iText?
iText to port iText w .NET, solidna biblioteka PDF oparta na Javie. Oferuje zaawansowana funkcjonalność, w tym cyfrowe podpisy, pola formularzy, kody kreskowe i wiele więcej. iText jest wysoko konfigurowalny i najlepiej nadaje się do przedsiębiorstw z potrzebami dokumentacji prawnej lub regulacyjnej.
Jednakze, związane jest to z licencjonowaniem. iText jest licencjonowany zgodnie z AGPL, co oznacza, że musisz otworzyć kod źródłowy swojego projektu, chyba że zakupisz komercyjną licencję.
Instalacja iText
Za pomoca NuGet, instalujesz go za pomoca:
Nowsze wersje używają przestrzeni nazw iText Core. Upewnij sie, ze zapoznasz sie z warunkami licencyjnymi przed integracja.
Przykladowy kod: Podstawowe generowanie PDF
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
// Create a writer and initiates a PDF document
PdfWriter writer = new PdfWriter("iTextHello.pdf");
var pdf = new PdfDocument(writer);
Document document = new Document(pdf);
// Add a paragraph to the document
document.Add(new Paragraph("Hello, iTextSharp!"));
// Closing the document
document.Close();Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element
' Create a writer and initiates a PDF document
Private writer As New PdfWriter("iTextHello.pdf")
Private pdf = New PdfDocument(writer)
Private document As New Document(pdf)
' Add a paragraph to the document
document.Add(New Paragraph("Hello, iTextSharp!"))
' Closing the document
document.Close()Wynik

Mocne i słabe strony iText
Mocne strony:
- Potężny i klasy enterprise
- Obsługuje PDF/A, szyfrowanie, wypełnianie formularzy i cyfrowe podpisy
- Modularna architektura z pluginami
Słabości:
- Licencja AGPL lub droga licencja komercyjna
- Stroma krzywa nauki
- Rozbudowana składnia w porównaniu do konkurentów
IronPDF: The Comprehensive Choice for C#

Dlaczego IronPDF się wyróżnia
IronPDF to biblioteka klasy komercyjnej, .NET, która kładzie nacisk na prostotę, dokładność renderowania i bogactwo funkcji. Jest szczególnie silna, jeśli chcesz konwertować HTML do PDF z pełną obsługą CSS, JavaScript i czcionek internetowych — czyniąc ją idealną do nowoczesnej, responsywnej generacji dokumentów PDF. Niezależnie od tego, czy chcesz tworzyć dokumenty PDF od podstaw, generować dokumenty PDF z HTML, czy po prostu potrzebujesz narzędzia, które doskonale manipuluje plikami PDF, IronPDF ma to, czego potrzebujesz.
Dzięki wsparciu dla .NET Core, .NET Framework, Azure i Docker, IronPDF jest odpowiednia zarówno dla startupów, jak i aplikacji klasy enterprise. Dzięki potężnym funkcjom, dobrej dokumentacji i możliwości działania na różnych platformach, IronPDF jest solidnym wyborem do generowania PDF.
Instalacja IronPDF
Zainstaluj go z konsoli menadżera pakietów NuGet:
Lub użyj interfejsu NuGet w Visual Studio. IronPDF oferuje darmowy okres próbny i elastyczne licencjonowanie do użytku komercyjnego bez ograniczeń AGPL.
IronPDF Sample Code: HTML do PDF w 5 liniach
using IronPdf;
var Renderer = new ChromePdfRenderer();
// Render a simple HTML string as a PDF document
var pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>");
// Save the PDF document as a file
pdf.SaveAs("IronPdfHello.pdf");Imports IronPdf
Private Renderer = New ChromePdfRenderer()
' Render a simple HTML string as a PDF document
Private pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>")
' Save the PDF document as a file
pdf.SaveAs("IronPdfHello.pdf")Wynik

Ten prosty przykład wykorzystuje pełną moc bezgłowego silnika Chromium do renderowania HTML/CSS dokładnie tak, jak zrobiłaby to przeglądarka — coś, z czym PDFSharp i iText sobie nie radzą.
Wydajność i doświadczenie programisty
IronPDF jest szeroko ceniony za:
- Dokładność: Renderowanie z dokładnością do piksela z użyciem silnika Chromium do generowania PDF
- Łatwość użycia: Nie trzeba ręcznie zarządzać rozmiarami stron, marginesami czy czcionkami
- Szybkość: Szybkie generowanie z obsługą wielowątkowości
- Wsparcie: Aktywna dokumentacja, przykłady i wsparcie klienta
Benchmarki pokazują, że IronPDF potrafi wygenerować złożoną fakturę HTML ze zdjęciami, CSS i JavaScriptem w mniej niż 2 sekundy na standardowym komputerze — znacznie przewyższając dodatki HTML iTexta lub metody ręcznego rysowania PDFSharpa.
Dlaczego warto wybrać IronPDF?
IronPDF zapewnia nowoczesne doświadczenie deweloperskie, kompletne z kluczowymi funkcjami takimi jak:
- Pełne wsparcie HTML5, CSS3, JS, Bootstrap i responsywny design do konwersji PDF z dokładnym renderowaniem
- Dostęp do zaawansowanych funkcji takich jak PDF/A, cyfrowe podpisy, znakowanie wodne, łączenie i dzielenie
- Licencjonowanie dostosowane do produktów komercyjnych — bez obaw o AGPL
- Doskonała dokumentacja i bogate wsparcie w postaci próbek
- Ekstrakcja danych z dokumentów PDF przy minimalnym wysiłku
- Nie ograniczas się tylko do języka programowania C#, IronPDF oferuje również wersje dla Java, Node.js i Python
Czy budujesz generator faktur, silnik raportów, czy system dokumentów oparty na przeglądarkach, IronPDF sprawia, że to proste i profesjonalne.
Ostateczne przemyślenia: Którą bibliotekę PDF w C# powinieneś wybrać?
Świat bibliotek PDF w C# jest różnorodny, a każde narzędzie, które omówiliśmy — PDFSharp, iText oraz IronPDF — ma swoje mocne i słabe strony oraz idealne przypadki użycia. Więc którą powinieneś wybrać do swoich aplikacji .NET?
PDFSharp: Lekki i DIY
Jeśli budujesz aplikację na małą skalę, masz podstawowe potrzeby renderowania dokumentów i preferujesz pełną kontrolę nad operacjami rysowania w PDF, PDFSharp jest godnym zaufania punktem wyjścia. Jego natura open-source i niewielkie koszty sprawiają, że jest idealna do projektów, gdzie kluczowe są licencjonowanie i prostota. Jednak za tym stoi manualny wysiłek: brak wsparcia HTML, brak nowoczesnego renderowania w sieci i ograniczony aktywny rozwój.
Użyj PDFSharp, jeśli:
- Chcesz tworzyć pliki PDF programistycznie z liniami, tekstem i prostym układem.
- Nie potrzebujesz w swojej aplikacji HTML do PDF, stylizacji CSS czy JavaScriptu.
- Kompatybilność open-source (licencja MIT) jest istotna.
iText: Potężny, ale skomplikowany
iText znajduje się na końcu spektrum przeznaczonego dla przedsiębiorstw. Jest potężny, bezpieczny i dobrze nadaje się do skomplikowanej manipulacji PDF, takiej jak:
- Wypełnianie formularzy
- Generowanie kodów kreskowych
- Zabezpieczanie plików podpisami cyfrowymi
- Zgodność z formatami, takimi jak PDF/A i PDF/UA
Jednak jego licencja AGPL może być ograniczająca, chyba że jesteś gotów albo otworzyć swój kod, albo zapłacić za licencję komercyjną — co nie jest tanie. Dodatkowo, krzywa nauki jest stromsza, a renderowanie HTML jest dodatkiem, a nie funkcją podstawową.
Użyj iText, jeśli:
- Budujesz systemy rządowe lub regulacyjne z wypełnianiem formularzy lub bezpiecznymi plikami PDF.
- Potrzebujesz szczegółowej kontroli nad operacjami PDF na niskim poziomie.
- Masz budżet na licencjonowanie komercyjne.
IronPDF: Nowoczesna, intuicyjna i bogata w funkcje
W przeciwieństwie do tego, IronPDF jest zaprojektowana do eleganckiego i szybkiego rozwiązywania rzeczywistych problemów. Łączy znajomość technologii webowych (HTML, CSS, JavaScript) z mocą renderowania Chromium, umożliwiając programistom konwersję złożonych układów w piękne PDF bez wysiłku.
Obejmuje:
- Renderowanie HTML na PDF z dokładnością do piksela
- Wykonywanie JavaScriptu (świetne do wykresów i dynamicznych danych)
- Łączenie, dzielenie, znakowanie wodne, podpisywanie i inne różne opcje manipulacji dokumentami PDF
- Integrację z .NET 6, 7 i dalszymi
- Łatwe wdrażanie do Azure, Docker i pipeline'ów CI/CD
Co najważniejsze, IronPDF koncentruje się na doświadczeniu programisty: czysta składnia, szybkie renderowanie, bogata dokumentacja i responsywne wsparcie.
Wybierz IronPDF, jeśli:
- Chcesz wartościowego narzędzia do renderowania HTML na PDF, które wygląda jak podgląd wydruku w przeglądarce.
- Twoje dokumenty polegają na stylizacji sieciowej (Bootstrap, Flexbox, Google Fonts).
- Potrzebujesz elastycznej licencji komercyjnej, wsparcia i aktualizacji.
- Cenisz czas wprowadzenia na rynek i produktywność programisty.
Werdykt: IronPDF wygrywa dla większości deweloperów .NET
Podczas gdy PDFSharp jest świetną opcją do podstawowego użytku, a iText obsługuje niszowe, zgodnościowe branże, IronPDF wyróżnia się jako kompleksowe rozwiązanie PDF dla nowoczesnych programistów C#. Zachowuje idealną równowagę między mocą, prostotą a rzeczywistą użytecznością.
Czy renderujesz dynamiczne raporty, generujesz faktury dla klientów z szablonów internetowych, czy eksportujesz bogatą dokumentację, IronPDF pozwala skoncentrować się na aplikacji, a nie na niuansach renderowania PDF.
Gotowy, aby to wypróbować?
Nie wierz nam na słowo — sam odkryj IronPDF:
Dzięki IronPDF nie tylko generujesz PDF-y — tworzysz wypolerowane, profesjonalne, gotowe do produkcji dokumenty, które wyglądają dokładnie tak, jak je zaprojektowałeś. Skróć czas programowania, wyeliminuj bóle głowy związane z renderowaniem i dostarczaj szybciej.

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ęczników.
Powiązane artykuły


