IRONSOFTWAREHOME
NARZĘDZIA PDF

Jak chronić hasłem PDF za darmo

Curtis Chau
Curtis Chau
Updated: 19 lipca 2026

Podczas pracy z dokumentami PDF w środowisku .NET programiści często porównują różne biblioteki, aby określić, która z nich najlepiej odpowiada wymaganiom ich projektu. Three popular choices in the .NET ecosystem are PDFSharp, QuestPDF, and IronPDF. Każda biblioteka jest przeznaczona do różnych zastosowań i ma swoje mocne i słabe strony. W tym artykułe przedstawimy szczegółowe porównanie tych bibliotek oraz sposobu, w jaki obsługują one podstawowe generowanie plików PDF przy użyciu tego adresu URL, aby pomóc Ci podjąć świadomą decyzję.

Czym jest PDFSharp?

PDFSharp to open-source biblioteka zaprojektowana do tworzenia, edycji i renderowania dokumentów PDF. Z naciskiem na prostotę i podstawową funkcjonalność PDF, PDFSharp był niezawodnym narzędziem dla deweloperów szukających prostych możliwości manipulacji PDF.

Kluczowe Funkcje PDFSharp

  • Tworzenie i edycja plików PDF: Generuj nowe pliki PDF lub modyfikuj istniejące.
  • Rysowanie grafiki: Obejmuje obsługę rysowania kształtów, tekstu i obrazów.
  • Open Source: Na licencji MIT, co oznacza, że można z niego korzystać i modyfikować go bezpłatnie.

Instalacja

Poprzez użycie Menedżera Pakietów NuGet, łatwo jest zainstalować PDFSharp w swoich projektach. Wystarczy uruchomić następujący wiersz w konsoli menedżera pakietów NuGet:

PM > Install-Package PDFsharp

Przykład Kodu PDFSharp

Teraz spójrzmy, jak PDFSharp może obsługiwać tworzenie nowego dokumentu PDF z podanego URL. Jako że PDFSharp sam nie jest w stanie obsłużyć konwersji HTML lub URL na PDF, będziemy musieli zintegrować silnik renderujący strony internetowej, taki jak HtmlRenderer.PdfSharp. Dodatkowo, użyjemy HttpClient, aby pobrać treść HTML z danego URL.

using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using PdfSharp.Pdf;
using TheArtOfDev.HtmlRenderer.PdfSharp;

public class Program
{
    static async Task Main(string[] args)
    {
        // Ensure proper encoding support
        Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
        
        string url = "https://www.apple.com";

        // Fetch HTML content from the URL
        using (HttpClient client = new HttpClient())
        {
            string htmlContent = await client.GetStringAsync(url);
            
            // Generate PDF from the fetched HTML content
            var pdf = PdfGenerator.GeneratePdf(htmlContent, PdfSharp.PageSize.A4);
            pdf.Save("output.pdf");
            
            Console.WriteLine("PDF created successfully as 'output.pdf'.");
        }
    }
}

Plik PDF wyjściowy

Przykład Wyniku PDFSharp

Jak widać, mimo że można użyć PDFSharp do konwersji treści HTML i stron internetowych na pliki PDF, potrzebuje on pomocy dodatkowych bibliotek i nie jest w stanie zachować żadnego z CSS i formatowania widocznego na oryginalnej stronie internetowej. Mimo że jest to wspaniała darmowa biblioteka dla programistów PDF, brakuje jej niektórych zaawansowanych funkcji spotykanych w płatnych bibliotekach, takich jak IronPDF.

Czym jest QuestPDF?

QuestPDF to nowoczesna biblioteka typu open source, której celem jest generowanie atrakcyjnych wizualnie plików PDF przy użyciu płynnego interfejsu API. Jego innowacyjne podejście do układu i renderowania dokumentów sprawia, że jest to silny kandydat do zastosowań wymagających dynamicznych i złożonych projektów.

Najważniejsze funkcje QuestPDF

  • Fluent API: Oferuje deklaratywne podejście do definiowania układów dokumentów.
  • Nowoczesny system układów: Zainspirowany CSS, obsługuje siatki, komponenty i elastyczne struktury układów.
  • Wysoka wydajność: Zoptymalizowana pod kątem szybkiego renderowania dużych i złożonych dokumentów.

Instalacja

Dzięki temu, że biblioteka ta jest dostępna do zainstalowania jako pakiet NuGet, jej instalacja jest prosta i wymaga jedynie uruchomienia jednej linii w konsoli NuGet:

PM > Install-Package QuestPDF

Przykład kodu QuestPDF

Teraz przyjrzyjmy się, jak QuestPDF poradzi sobie z konwersją naszego przykładowego adresu URL do formatu PDF. Chociaż QuestPDF nie obsługuje natywnie konwersji adresów URL do formatu PDF, można użyć klienta HTTP do pobrania treści HTML i renderowania jej do formatu PDF przy użyciu płynnego interfejsu API QuestPDF.

using System;
using System.Net.Http;
using System.Threading.Tasks;
using HtmlAgilityPack;
using QuestPDF.Fluent;
using QuestPDF.Helpers;
using QuestPDF.Infrastructure;

public class Program
{
    static async Task Main(string[] args)
    {
        // Configure QuestPDF to use the community license
        QuestPDF.Settings.License = LicenseType.Community;

        string url = "https://www.apple.com";

        // Fetch HTML content from the URL
        using (HttpClient client = new HttpClient())
        {
            string htmlContent = await client.GetStringAsync(url);

            // Parse the HTML content using HtmlAgilityPack
            var htmlDoc = new HtmlDocument();
            htmlDoc.LoadHtml(htmlContent);
            
            // Extract meaningful content (e.g., text inside <body>)
            var bodyContent = htmlDoc.DocumentNode.SelectSingleNode("//body")?.InnerText ?? "No content found";

            // Generate PDF using QuestPDF
            Document.Create(container =>
            {
                container.Page(page =>
                {
                    page.Size(PageSizes.A4);
                    page.Margin(20);
                    page.Content().Text(bodyContent);
                });
            }).GeneratePdf("output.pdf");
            
            Console.WriteLine("PDF created successfully as 'output.pdf'.");
        }
    }
}

Plik PDF wyjściowy

Przykład Wyniku QuestPDF

Podobnie jak w przypadku PDFSharp, chociaż QuestPDF może być wykorzystywany do konwersji treści HTML do formatu PDF przy pomocy zewnętrznych bibliotek, takich jak HtmlAgilityPack, nie jest w stanie zachować żadnego stylowania CSS ani formatowania. Chociaż QuestPDF to świetny wybór dla każdego, kto chce tworzyć dokumenty PDF od podstaw, konwersja HTML na PDF nie jest mocną stroną tej biblioteki.

IronPDF: Potężna biblioteka PDF

IronPDF to solidna biblioteka PDF przeznaczona dla programistów .NET, którzy potrzebują zaawansowanych i kompleksowych funkcji związanych z plikami PDF. Nacisk na renderowanie HTML do PDF, w połączeniu z dodatkowymi funkcjami, takimi jak zaawansowane opcje manipulowania dokumentami PDF, szyfrowanie i zgodność z PDF/A, sprawia, że jest to potężny wybór dla aplikacji klasy korporacyjnej.

Najważniejsze cechy IronPDF

  • HTML do PDF: Łatwe renderowanie pełnych stron internetowych lub ciągów HTML jako plików PDF.
  • Zgodność z PDF/A: Generuj dokumenty zgodne ze standardami długoterminowej archiwizacji.
  • Zaawansowane zabezpieczenia: Obsługuje szyfrowanie, ochronę hasłem i podpisy cyfrowe.
  • Edycja plików PDF: Modyfikuj, scałaj i dziel istniejące pliki PDF.
  • Wielopłatformowość: w pełni kompatybilny z .NET Framework, .NET Core i .NET 5+.

Instalacja

Aby zainstalować IronPDF, użyj menedżera pakietów NuGet w Visual Studio:

Korzystanie z menedżera pakietów NuGet:

  1. Otwórz swój projekt w Visual Studio.
  2. Kliknij prawym przyciskiem myszy projekt w Eksploratorze rozwiązań i wybierz opcję "Zarządzaj pakietami NuGet".
  3. Wyszukaj "IronPDF" i kliknij "Zainstaluj".

Wizualizacja Instalacji IronPDF

Korzystanie z konsoli menedżera pakietów NuGet:

PM > Install-Package IronPdf

Przykład: Konwersja adresu URL do formatu PDF przy użyciu IronPDF

IronPDF zapewnia proste i bezpośrednie API do konwersji adresów URL na pliki PDF. Oto przykład:

using IronPdf;

public class PdfConverter
{
    public static void Main(string[] args)
    {
        // Create a renderer with IronPdf
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the URL as a PDF
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.apple.com");

        // Save the PDF
        pdf.SaveAs("url.pdf");
    }
}

Plik PDF wyjściowy

Przykład Wyniku IronPDF

Powyższy przykład kodu pokazuje, jak IronPDF może z łatwością konwertować zawartość adresów URL do formatu PDF za pomocą zaledwie kilku wierszy kodu. Jak widać, nie tylko przekonwertowano kod HTML, ale także style CSS i układy, dzięki czemu plik PDF jest wierny oryginalnemu formatowaniu. Dzięki wykorzystaniu silnika renderującego ChromePdfRenderer, IronPDF tworzy dokumenty PDF o idealnej jakości pikseli, które nie tracą nic z oryginalnej jakości treści w procesie konwersji.

Jak widać, IronPDF to świetny wybór do konwersji HTML na PDF, a także do konwersji innych typów dokumentów na PDF. Obsługuje zadania konwersji o wysokiej jakości w zwięzłym, łatwym do wdrożenia bloku kodu.

Szczegółowa analiza

Łatwość użytkowania

PDFSharp jest prosty i łatwy w użyciu, co czyni go doskonałym wyborem dla początkujących lub deweloperów z podstawowymi potrzebami PDF. Jego proceduralne podejście pozwala na szybką konfigurację i wdrożenie w przypadku zadań takich jak dodawanie tekstu, kształtów lub obrazów do pliku PDF. Wymaga jednak zewnętrznej biblioteki do obsługi zadań związanych z konwersją HTML i adresów URL do formatu PDF.

Z kolei QuestPDF oferuje bardziej nowoczesne podejście dzięki płynnemu API. Programiści z doświadczeniem w projektowaniu stron internetowych lub interfejsów użytkownika uznają go za intuicyjny, ale nowicjusze mogą napotkać niewielkie trudności w nauce, przyzwyczajając się do filozofii projektowania skoncentrowanej na układzie. Ponownie, brakuje wbudowanych narzędzi do konwersji HTML na PDF.

IronPDF zapewnia najprostszą obsługę konwersji HTML do PDF oraz zaawansowane funkcje PDF. Jego intuicyjny interfejs API skraca czas wdrożenia i oferuje obszerną dokumentację oraz przykłady. IronPDF umożliwia konwersję wielu różnych typów dokumentów do formatu PDF, takich jak przykład przekształcenia adresu URL na plik PDF, który omówiliśmy w tym artykułe, a wszystko to bez utraty jakości dokumentu.

Wydajność

Wydajność jest kluczowym czynnikiem, zwłaszcza w przypadku aplikacji, które muszą dynamicznie generować pliki PDF. PDFSharp jest odpowiedni dla małych i prostych dokumentów, ale ma trudności z dużymi lub złożonymi układami.

QuestPDF wyróżnia się w renderowaniu dynamicznych i atrakcyjnych wizualnie dokumentów. Jest zoptymalizowany pod kątem obsługi ustrukturyzowanych układów z wysoką wydajnością.

IronPDF wyjątkowo dobrze łączy wydajność z funkcjonalnością, zwłaszcza w przypadku aplikacji wymagających renderowania HTML oraz obsługi CSS i JavaScript. Z łatwością radzi sobie również z zadaniami związanymi z plikami PDF na poziomie Enterprise.

Podsumowanie porównania

  • PDFSharp jest lekką i open-source biblioteką najlepiej nadającą się do podstawowego tworzenia i edycji zadań PDF. Idealnie nadaje się do małych projektów, ale brakuje mu obsługi nowoczesnych układów i zaawansowanych funkcji.
  • QuestPDF wyróżnia się w generowaniu dynamicznych, złożonych i atrakcyjnych wizualnie plików PDF przy użyciu płynnego interfejsu API. Skupia się jednak wyłącznie na generowaniu plików PDF i nie obsługuje edycji istniejących dokumentów.
  • IronPDF oferuje najbardziej wszechstronny zestaw funkcji, w tym wbudowaną konwersję HTML do PDF, OCR oraz zaawansowane opcje bezpieczeństwa. Chociaż wymaga licencji komercyjnej, jego funkcjonalność sprawia, że jest to najlepszy wybór dla zastosowań korporacyjnych i profesjonalnych.

Wnioski

Wybór odpowiedniej biblioteki PDF do projektu .NET zależy od konkretnych wymagań. Jeśli potrzebujesz lekkiego, open-source narzędzia do podstawowych zadań PDF, PDFSharp jest solidną opcją. Jeśli chodzi o tworzenie dynamicznych, atrakcyjnych wizualnie dokumentów, QuestPDF wyróżnia się nowoczesnym podejściem.

Jeśli jednak potrzebujesz zaawansowanych funkcji, płynnej konwersji HTML do PDF oraz możliwości na poziomie Enterprise, sprawdź, co ma do zaoferowania IronPDF.

Zrozumienie mocnych stron i ograniczeń każdej biblioteki pozwoli Ci podjąć świadomą decyzję, która będzie odpowiadać potrzebom Twojego projektu.

Zwróć uwagę: PDFSharp i QuestPDF są zarejestrowanymi znakami towarowymi swojego właściciela. Ta strona nie jest powiązana z, wspierana ani sponsorowana przez PDFSharp lub QuestPDF. Wszystkie nazwy produktów, logo i marki są własnością ich odpowiednich właścicieli. Porównania mają charakter wyłącznie informacyjny i odzwierciedlają informacje dostępne publicznie w momencie pisania.
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ęczników.

...
Czytaj więcej

Powiązane artykuły

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Zarezerwuj swoje darmowe Demo na żywo
Booking Badge

Zaufane przez miliony inżynierów na całym świecie

Logotypy klientów Iron Software
Otrzymaj swoje Konsultacja Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
QuestPDF Logo

Zmęczony drogimi odnowieniami i przestarzałymi aktualizacjami produktów?

Dokonaj łatwego przejścia z QuestPDF z naszym wsparciem inżynierskim na rzecz migracji i lepszego dealu.