
Jak wyodrębnić strony z plików PDF — przewodnik krok po kroku
Film jest instruktażnym przewodnikiem, jak korzystać z bibliotekiPDFSharpdo generowania plików PDF przy użyciu kodu C#. Prelegent zaczyna od wprowadzeniaPDFSharpjako trudnej, lecz efektywnej biblioteki do generowania plików PDF. Biblioteka posiada zaawansowane funkcje i w przeciwieństwie do wielu swoich konkurentów jest całkowicie bezpłatna. Prelegent podkreśla, że pomimo swojej złożoności,PDFSharpjest doskonałym wyborem do generowania plików PDF za pomocą C#.
Na początku samouczka prelegent przedstawia przykład wygenerowanego pliku PDF, który składa się z trzech wierszy tekstu. Pierwsza linijka tekstu nie jest dokładnie pierwszą, natomiast trzecia linijka tekstu pojawia się w prawym dolnym rogu. Prelegent zauważa, że kolejność tekstu nabierze sensu po przejrzeniu kodu. Wyjaśnia również, że będzie używał .NET 5 do zaprezentowania, jak działa PDFSharp. Aby uzyskać szerszy obraz tworzenia plików PDF od podstaw w języku C#,IronPDF oferuje uproszczone alternatywne podejście.
Oto szybki przegląd, jakPDFSharpi IronPDF różnią się w odniesieniu do funkcji najbardziej istotnych dla projektów PDF .NET:
| Funkcja | IronPDF | PDFSharp |
|---|---|---|
| Konwersja HTML do PDF | Yes | Nie |
| Podpisy cyfrowe | Yes | Nie |
| Szyfrowanie | Yes | Nie |
| HTML, CSS i JavaScript | Yes | Nie |
| Professional wsparcie | Yes | Nie |
| Licencjonowanie | Komercjalne | MIT (Open Source) |
Szczegółowe wyjaśnienia i przykłady kodu dla każdej z tych różnic znajdują się w poniższych sekcjach. Zespoły porównujące obie biblioteki mogą przetestować możliwości IronPDF z darmową 30-dniową wersją próbną.
Instalacja i konfiguracja
Zanim przejdziemy do kodu, prelegent podkreśla, że skonfigurowanie środowiska dlaPDFSharpmoże być dość trudne. Wyjaśnia, że przed rozpoczęciem pracy z otworzeniem szczegółowych informacji o pakieciePDFSharpNuGet, należy zainstalować trzy pakiety NuGet. Pierwszym pakietem jest sam PDFSharp, który może wygenerować ostrzeżenie, że może nie być zgodny z .NET ze względu na swoją starszą wersję. Pozostałe dwa pakiety to System.Drawing.Common i System.Text.Encoding.CodePages.

Prelegent podkreśla, że wszystkie trzy pakiety muszą być zainstalowane przed rozpoczęciem pracy z PDFSharp; w przeciwnym razie kod wygeneruje błąd. Wyjaśnia, że pakiet System.Text.Encoding.CodePages jest szczególnie istotny, ponieważ zapewnia niezbędne wsparcie kodowania do generowania plików PDF. Autor zwraca również uwagę, że nieprawidłowa instalacja pakietów może utrudnić rozwiązywanie problemów. Zespoły pragnące uniknąć całkowicie wielopakietowego zestawu mogą postępować zgodnie z przewodnikiem migracji zPDFSharpdo IronPDF, który przedstawia krok po kroku proces przejścia.
Instalowanie powiązanych bibliotek
AbyPDFSharpdziałał poprawnie, prelegent wyjaśnia, że należy zarejestrować dostawcę dla System.Text.Encoding. Dostawca pochodzi z pakietu System.Text.Encoding.CodePages, a prelegent podkreśla znaczenie zarejestrowania pakietu, abyPDFSharpdziałał poprawnie. Wyjaśniają, że brak rejestracji dostawcy spowoduje błąd, którego usunięcie może być trudne.
Tworzenie pliku PDF
Następnie prelegent przedstawia prostą aplikację konsolową, która używaPDFSharpdo generowania pliku PDF. Wyjaśnia, że przed użyciem biblioteki należy zadeklarować instrukcje using dla RysowaniaPDFSharpi PDF PDFSharp. Następnie prelegent przedstawia kod służący do generowania pliku PDF, który obejmuje utworzenie nowego dokumentu, dodanie nowej strony oraz narysowanie tekstu na tej stronie.
using PdfSharp.Drawing;
using PdfSharp.Pdf;
namespace PdfSharpExample
{
class Program
{
static void Main(string[] args)
{
// Create a new PDF document
PdfDocument document = new PdfDocument();
// Add a new page
PdfPage page = document.AddPage();
// Prepare to draw on the page
XGraphics gfx = XGraphics.FromPdfPage(page);
// Define a font
XFont font = new XFont("Verdana", 20, XFontStyle.Bold);
// Draw a string to the page
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black,
new XRect(0, 0, page.Width, page.Height),
XStringFormats.Center);
// Save the document
const string filename = "HelloWorld.pdf";
document.Save(filename);
}
}
}Imports PdfSharp.Drawing
Imports PdfSharp.Pdf
Namespace PdfSharpExample
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Create a new PDF document
Dim document As New PdfDocument()
' Add a new page
Dim page As PdfPage = document.AddPage()
' Prepare to draw on the page
Dim gfx As XGraphics = XGraphics.FromPdfPage(page)
' Define a font
Dim font As New XFont("Verdana", 20, XFontStyle.Bold)
' Draw a string to the page
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
' Save the document
Const filename As String = "HelloWorld.pdf"
document.Save(filename)
End Sub
End Class
End NamespacePrelegent zauważa, że kod służący do generowania pliku PDF można dostosować tak, aby uwzględniał bardziej złożone funkcje, takie jak dodawanie obrazów (zobacz, jak konwertować obrazy do formatu PDF za pomocą IronPDF), tabel i wykresów. Wyjaśniają również, żePDFSharpoferuje różne funkcje do pracy z czcionkami, w tym osadzanie czcionek w pliku PDF.

Prelegent wyjaśnia znaczenie poprawnego skonfigurowania środowiska poprzez instalację niezbędnych pakietów NuGet i rejestrację dostawcy dla System.Text.Encoding. Prezentują także prostą aplikację konsolową, która korzysta zPDFSharpdo generowania pliku PDF i demonstrują, jak kod można dostosować do bardziej skomplikowanych funkcji. Film jest doskonałym źródłem dla każdego zainteresowanego generowaniem plików PDF przy użyciu C# i PDFSharp.
Tworzenie list i bardziej złożonych elementów
W drugiej części filmu prelegent rozpoczyna od przedstawienia bardziej złożonego przykładu tworzenia dokumentu PDF. Podkreśla, że posiadanie pustego dokumentu PDF nie ma sensu, a następnie wyjaśnia, jak utworzyć nową stronę przy użyciu biblioteki PDFSharp. Zauważa on, że proces ten jest podobny do tworzenia elementów w dodatkach do programów Excel lub PowerPoint oraz że po utworzeniu strony działa ona w oparciu o odwołanie, które nie wymaga wywołania innej metody.

Prelegent następnie wprowadza zmienną XGraphics, która zapewnia metody do rysowania takich rzeczy, jak tekst, linie i obrazy — funkcjonalność, którąIronPDF obsługuje poprzez swoje API znakowania tekstu i obrazów bez potrzeby ręcznych obliczeń współrzędnych. Zmienne XFont są również wprowadzane jako środek do ustawienia czcionki do użycia w dokumencie PDF. Prelegent zauważa, że czcionkę można wygenerować gdzie indziej, ale w przypadku bardziej złożonego układu warto skonfigurować ją globalnie.
Następnie prelegent omawia metodę DrawString, która zapisuje tekst do pliku PDF. Zaznacza, że skomplikowaną częścią metody jest określenie, gdzie tekst zostanie narysowany i wyjaśnia różne zaangażowane parametry, takie jak czcionka, kolor i granice miejsca, gdzie tekst może się wyrównać. Wyjaśnia również użycie zmiennej XBrushes do ustawienia koloru tekstu.
Wyjaśnianie DrawString i Inne Metody
Prelegent następnie przedstawia kilka przykładów użycia metody DrawString z różnymi parametrami, takich jak wyrównanie tekstu do środka, wyrównanie do dołu lewej strony i określenie dokładnych współrzędnych, gdzie tekst zostanie umieszczony. Zauważa on, że ostatnia opcja jest najbardziej konfigurowalna i oferuje dużą elastyczność.

Prelegent wyjaśnia, jak utworzyć tabelę przy użyciu grafiki w języku programowania C#. Obejmują one sposób wstawiania obrazów, ciągów znaków i linii, a także rysowania łuków i BARCODE-ów za pomocą funkcji graficznej — zadania, które IronPDF upraszcza dzięki opcjom renderowania marginesów, nagłówków i DPI. Wyjaśniają również znaczenie metody prób i błędów podczas pracy ze współrzędnymi oraz sposób rysowania linii w celu oddzielenia wierszy.
Prelegent omawia również nagłówek tabeli oraz potrzebę ustalenia punktu początkowego dla wartości i linii. Wyjaśnia, jak dostosować pozycję y i dodawać wiersze rekordów, a także jak przejść do kolejnej strony, gdy tabela przekroczy określoną liczbę rekordów. Na koniec wspominają o znaczeniu resetowania wartości dla każdej strony.
Którą bibliotekę wybrać?
Podsumowując, prelegent podkreśla znaczenie znajomości dodatków do pakietu Microsoft Office podczas pracy zPDFSharpi oferuje własny kurs na ten temat. Zauważa również, że biblioteka jest bardzo wszechstronna i może służyć do tworzenia szerokiej gamy dokumentów PDF, od prostych dokumentów tekstowych po bardziej złożone, zawierające obrazy, grafiki i niestandardowe układy.
Czym jest IronPDF?
IronPDF to biblioteka C# do tworzenia, edycji i manipulowania dokumentami PDF. Dostarczana jest jako pojedynczy pakiet NuGet — Install-Package IronPdf — i integruje się z aplikacjami .NET bez potrzeby dodatkowego skonfigurowania zależności.
PDFSharp oferuje solidną niskopoziomową kontrolę rysowania i jest dostarczana na podstawie elastycznej licencji MIT — dwa prawdziwe atuty, które uczyniły ją podstawową w wielu projektach .NET. Zespoły często napotykają trudności, gdy wymagania wykraczają poza renderowanie oparte na współrzędnych i obejmują takie obszary, jak konwersja HTML do PDF, podpisy cyfrowe lub szyfrowanie dokumentów.IronPDF to biblioteka objęta wsparciem komercyjnym, która traktuje te scenariusze jako operacje najwyższej klasy, oferując profesjonalne wsparcie oraz interfejs API zaprojektowany z myślą o typowych procesach generowania dokumentów, w tym renderowaniu HTML, CSS i JavaScript.
Funkcje
| Funkcje | IronPDF | PDFSharp |
|---|---|---|
| Konwersja HTML do PDF | Tak | Nie |
| Professional wsparcie | Tak | Nie |
| Obsługa HTML, CSS i JavaScript | Tak | Nie |
| Podpisy cyfrowe | Tak | Nie |
| Szyfrowanie | Tak | Nie |
Jedną z kluczowych funkcji IronPDF jest możliwość konwersji HTML do PDF za pomocą IronPDF, co ułatwia tworzenie dokumentów PDF ze stron internetowych. Konwersja HTML na PDF jest poza obecnym zakresemPDFSharp— operuje na poziomie rysowania współrzędnych — więc zespoły potrzebujące tej funkcjonalności zazwyczaj dodają oddzielną bibliotekę renderującą lub oceniają wbudowany silnik Chromium IronPDF.
IronPDF obsługuje również podpisy cyfrowe oraz szyfrowanie plików PDF z ochroną hasłem, co ma kluczowe znaczenie w przypadku poufnych dokumentów wymagających bezpiecznego postępowania.PDFSharpnie jest zaprojektowany do radzenia sobie z tymi scenariuszami bezpieczeństwa, więc zespoły z wymaganiami dotyczącymi zgodności lub ochrony dokumentów często uważają to za naturalny punkt infleksyjny do oceny IronPDF.
IronPDF oferuje szerszy zestaw funkcji i bardziej kompleksowe wsparcie w porównaniu do PDFSharp, obejmując renderowanie HTML, szyfrowanie i podpisy cyfrowe w jednym pakiecie NuGet. Jest to jednak produkt komercyjny, dlatego zespoły, których wymagania mieszczą się w modelu rysowania współrzędnychPDFSharp— i które nie potrzebują konwersji HTML lub wbudowanych funkcji bezpieczeństwa — mogą woleć podejście open-source'owePDFSharplicencjonowane na MIT.
Poza kosztem licencji, całkowity koszt projektu obejmuje godziny dewelopera zainwestowane w złożenie oddzielnych bibliotek renderujących, zarządzanie układami stron bazujących na współrzędnych dla złożonych dokumentów i rozwiązywanie problemów, które wymaga wielopakietowego zestawu PDFSharp. 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.
Chcesz sprawdzić, jak IronPDF wpisuje się w Twój proces pracy? [Pobierz bezpłatną 30-dniową wersję probną](Licencja Trial, aby przetestować wszystkie funkcje omówione w tym porównaniu.

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


