Przejdź do treści stopki
PORóWNANIA PRODUKTóW

IronPDF vs SelectPdf: Kompleksowe porównanie bibliotek PDF Net Core dla konwersji HTML na PDF

Format PDF został stworzony przez firmę Adobe w celu dystrybucji dokumentów zawierających formatowanie tekstu i grafiki. Potrzebujemy osobnej aplikacji do otwierania plików PDF. W dzisiejszym świecie pliki PDF są absolutnie niezbędne. W wielu różnych firmach do fakturowania i generowania dokumentów używa się plików w formacie PDF. Programiści używają formatu PDF do tworzenia dokumentów dostosowanych do potrzeb swoich klientów. Dzięki dzisiejszym bibliotekom tworzenie plików PDF nigdy nie było łatwiejsze. Korzystając z tego typu bibliotek w projekcie, musimy wziąć pod uwagę takie czynniki, jak możliwości kompilacji, odczytu i konwersji, aby określić, która biblioteka jest najlepsza na rynku.

W niniejszym artykułe porównamy dwie najpopularniejsze biblioteki PDF dla komponentów .NET. Te dwie biblioteki to:

  • IronPDF
  • Kontrolki przeglądarki PDF DevExpress

IronPDF i DevExpress PDF to dwie biblioteki, które można wykorzystać w aplikacji Microsoft .NET. IronPDF może służyć do tworzenia, odczytywania i modyfikowania plików PDF, zarówno online, jak i w aplikacji desktopowej. DevExpress zapewnia zarówno kontrolkę PDF Viewer do wyświetlania dokumentów, jak i DevExpress.Pdf — pełną bibliotekę PDF do programowego tworzenia i manipulowania plikami PDF.

Funkcje IronPDF

IronPDF to wydajny konwerter plików PDF, który potrafi praktycznie wszystko to, co przeglądarka. Jest to przyjazna dla programistów biblioteka PDF, która sprawia, że tworzenie, odczytywanie i edycja plików PDF jest niezwykle łatwa. IronPDF konwertuje HTML na PDF przy użyciu silnika Chrome. IronPDF obsługuje między innymi aplikacje Windows Forms, HTML, ASPX, Razor HTML, .NET Core, ASP.NET, Windows Form, WPF, Xamarin, Blazor, Unity i HoloLens, a także inne komponenty internetowe. Aplikacje Microsoft .NET i .NET Core są obsługiwane przez IronPDF (zarówno aplikacje internetowe ASP.NET, jak i tradycyjne aplikacje Windows). IronPDF może być również wykorzystywany do tworzenia atrakcyjnych wizualnie plików PDF.

IronPDF może konwertować HTML5, JavaScript, CSS i obrazy na dokumenty PDF. W pliku można również umieścić nagłówek i stopkę. Może to również ułatwić czytanie plików PDF. IronPDF zawiera również solidny konwerter HTML na PDF, który obsługuje pliki PDF. IronPDF oferuje potężny silnik konwersji plików PDF. IronPDF nie ma żadnych zewnętrznych zależności.

  • Źródła, które można wykorzystać do utworzenia pliku PDF, obejmują HTML, HTML5, ASPX oraz Razor/MVC View. Możemy nie tylko konwertować pliki HTML do formatu PDF, ale także pliki graficzne.
  • Tworzenie interaktywnych dokumentów PDF, wypełnianie i przesyłanie interaktywnych formularzy, łączenie i dzielenie dokumentów PDF, wyodrębnianie tekstu i obrazów z dokumentów PDF, wyszukiwanie tekstu w dokumentach PDF, rasteryzacja stron PDF do obrazów oraz konwersja dokumentów PDF to tylko niektóre z czynności, które możemy wykonać za pomocą IronPDF.
  • Na początek utwórz dokument, korzystając z oficjalnej strony internetowej IronPDF. Obsługuje również niestandardowe dane logowania do sieci, agenty użytkownika, serwery proxy, pliki cookie, nagłówki HTTP oraz zmienne formularzy służące do logowania za pomocą formularzy logowania HTML.
  • Po podaniu nazwy użytkownika i hasła IronPDF umożliwia nam otwieranie dokumentów chronionych.
  • IronPDF to program, który odczytuje i wypełnia puste pola w istniejących dokumentach PDF.
  • Posiada możliwość wyodrębniania obrazów z dokumentów.
  • Pozwala nam dostosowywać dokumenty za pomocą nagłówków, stopek, tekstu, obrazów, zakładek, znaków wodnych i innych elementów.
  • Pozwala nam to dzielić i łączyć strony w nowym lub istniejącym dokumencie.
  • Nawet bez programu Acrobat Reader możemy konwertować dokumenty na obiekty PDF.
  • Plik CSS można przekonwertować na dokumenty PDF.
  • Pliki typu media CSS można przekształcić w dokumenty.
  • Wypełnij istniejące formularze PDF i dodaj nowe.

Funkcje DevExpress PDF

DevExpress udostępnia kontrolki WinForms, które można wykorzystać w aplikacjach Windows dostępnych w Visual Studio. Zawiera listę elementów sterujących WinForms, które umożliwiają użytkownikom dostęp do plików PDF. Zapewnia również kontrolki dla kontrolek WPF i kontrolek formularzy ASP.NET.

Przeglądarka PDF wyświetla pliki PDF bezpośrednio w aplikacji WinForms bez konieczności instalowania zewnętrznej przeglądarki PDF na komputerze. Kontrolka PDF Viewer w Windows Forms umożliwia przeglądanie, edycję i drukowanie dokumentów PDF bezpośrednio z poziomu aplikacji. Przeglądarka plików PDF nie tylko wyświetla dokumenty — pozwala również użytkownikom na zmianę pól formularzy, dodawanie adnotacji do dokumentów oraz korzystanie ze schowka. DevExpress jest dostępny dla wszystkich frameworków i bibliotek .NET. Zapewnia również kontrolki i rozszerzenia dla ASP.NET, MVC, ASP.NET Core itp.

PDF Viewer obsługuje bogaty zestaw typów treści dokumentów, w tym:

  • Obrazy JPX / JBIG2
  • Wzorce
  • Grupy przezroczystości
  • Czcionki typu 3
  • Formularze interaktywne

Tak, kontrolka DevExpress WinForms PDF jest obsługiwana przez DirectX — z wyjątkową obsługą renderowania tekstu i inicjalizowania tekstu.

Pełny interfejs użytkownika jest dołączony do widoku PDF dla WinForms. Może być używany do zmiany sposobu wyświetlania dokumentu, takiego jak obracanie go zgodnie z ruchem wskazówek zegara i przeciwnie do ruchu wskazówek zegara, powiększanie treści na stronie i przełączanie się między ostatnio używanymi stylami wyświetlania stron.

Narzędzia do pracy ręcznej, narzędzia do powiększania kadru i różne tryby interakcji z klawiaturą i kursorem są dostępne w kontrolkach PDF Viewer. W menu kontekstowym zmień tryb kursora lub wybierz narzędzie w interfejsie poleceń.

Okienko nawigacji pozwala szybko przemieszczać się pomiędzy zapisanymi stronami, nawigować do konkretnej strony za pomocą miniatur oraz organizować plik i adnotacje.

DevExpress pozwala na przekazywanie opinii i oferuje ciągłe wsparcie w odpowiedzi na zapytania. Z zespołem wsparcia można się skontaktować, jeśli potrzebna jest bardziej szczegółowa opinia.

2. Tworzenie nowego projektu w Visual Studio

Otwórz oprogramowanie Visual Studio i przejdź do menu plików. Wybierz "nowy projekt", a następnie wybierz "Aplikacja konsolowa". W tym artykułe wykorzystamy aplikację konsolową do generowania dokumentów PDF.

Devexpress Pdf Viewer Alternatives 1 related to 2. Tworzenie nowego projektu w Visual Studio

Wpisz nazwę projektu i wybierz ścieżkę do pliku w odpowiednim polu tekstowym. Następnie kliknij przycisk Tworzenie i wybierz wymagane środowisko .NET Framework, jak na poniższym zrzucie ekranu:

Devexpress Pdf Viewer Alternatives 2 related to 2. Tworzenie nowego projektu w Visual Studio

Projekt Visual Studio wygeneruje teraz strukturę dla wybranej aplikacji, a jeśli wybrano aplikację konsolową, okienkową i sieciową, otworzy teraz plik program.cs, w którym można wprowadzić kod i zbudować/uruchomić aplikację.

Devexpress Pdf Viewer Alternatives 3 related to 2. Tworzenie nowego projektu w Visual Studio

Następnie możemy dodać bibliotekę, aby przetestować kod.

3.0 Instalacja biblioteki IronPDF

Bibliotekę IronPDF można pobrać i zainstalować na cztery sposoby.

Są to:

  • Korzystanie z programu Visual Studio
  • Korzystanie z wiersza poleceń programu Visual Studio
  • Bezpośrednie pobranie ze strony NuGet
  • Bezpośrednie pobranie ze strony IronPDF

3.1 Korzystanie z programu Visual Studio

Oprogramowanie Visual Studio oferuje opcję menedżera pakietów NuGet do bezpośredniego zainstalowania pakietu w rozwiązaniu. Poniższy zrzut ekranu pokazuje, jak otworzyć menedżera pakietów NuGet.

Devexpress Pdf Viewer Alternatives 4 related to 3.1 Korzystanie z programu Visual Studio

Zapewnia pole wyszukiwania do wyświetlenia listy pakietów z witryny NuGet. W menedżerze pakietów należy wyszukać słowo kluczowe "IronPDF", jak na poniższym zrzucie ekranu:

Devexpress Pdf Viewer Alternatives 5 related to 3.1 Korzystanie z programu Visual Studio

Na powyższym obrazie otrzymujemy listę powiązanych elementów wyszukiwania. Musimy wybrać odpowiednią opcję, aby zainstalować pakiet w rozwiązaniu.

3.2 Korzystanie z wiersza poleceń programu Visual Studio

W Visual Studio przejdź do Narzędzia-> Menedżer pakietów NuGet -> Konsola menedżera pakietów

Wprowadź następujący wiersz w zakładce konsoli menedżera pakietów:

Install-Package IronPdf

Pakiet zostanie teraz pobrany/zainstalowany w bieżącym projekcie i będzie gotowy do użycia.

Devexpress Pdf Viewer Alternatives 6 related to 3.2 Korzystanie z wiersza poleceń programu Visual Studio

3.3 Pobieranie bezpośrednie z witryny NuGet

Trzecim sposobem jest pobranie pakietu NuGet bezpośrednio ze strony internetowej.

  • Przejdź do strony pakietu NuGet
  • Wybierz opcję pakietu do pobrania z menu po prawej stronie.
  • Kliknij dwukrotnie pobrany pakiet. Zostanie zainstalowany automatycznie.
  • Następnie odśwież rozwiązanie i zacznij z niego korzystać w projekcie.

3.4 Pobieranie bezpośrednie ze strony internetowej IronPDF

Pobierz najnowszy pakiet bezpośrednio z strony IronPDF. Po pobraniu wykonaj poniższe kroki, aby dodać pakiet do projektu.

  • Kliknij prawym przyciskiem myszy projekt w oknie rozwiązania.
  • Następnie wybierz opcję odniesienia i przeszukaj lokalizację pobranego odniesienia.
  • Następnie kliknij OK, aby dodać odniesienie.

4.0 Instalacja biblioteki PDF Viewer

Biblioteka PDF Viewer może być pobrana i zainstalowana na cztery sposoby.

Są to:

  • Korzystanie z programu Visual Studio
  • Korzystanie z wiersza poleceń programu Visual Studio
  • Bezpośrednie pobieranie z witryny DevExpress

Zarejestruj DevExpress NuGet

Aby używać NuGet do instalacji pakietów DevExpress, musisz najpierw zarejestrować kanał NuGet DevExpress jako źródło pakietu.

  1. Mając URL kanału NuGet lub klucz autoryzacji, możesz uzyskać dostęp do pakietów NuGet DevExpress. Więcej informacji lub aktualizacji możesz znaleźć w dokumentacji DevExpress.
  2. W Visual Studio otwórz panel Opcje (Narzędzia -> Opcje) i zarejestruj kanał NuGet DevExpress jako źródło pakietu. Znajdź opcję Menedżera pakietów w tym dialogu i, jak pokazano poniżej, dodaj kanał DevExpress do źródła pakietu.
    • Jeśli używasz klucza autoryzacji, użyj https://nuget.devexpress.com/api jako źródła pakietu.
    • Jeśli używasz URL kanału NuGet, określ go jako źródło pakietu.
Devexpress Pdf Viewer Alternatives 7 related to Zarejestruj DevExpress NuGet

4.1 Korzystanie z programu Visual Studio

Jak powyżej, po prostu przejdź do menedżera pakietów NuGet i wybierz menedżera pakietów NuGet DevExpress. Następnie wyszukaj słowo kluczowe "Win.PdfViewer". Zapewni to wszystkie powiązane wyniki wyszukiwania jak poniżej.

Devexpress Pdf Viewer Alternatives 8 related to 4.1 Korzystanie z programu Visual Studio

Wybierz pierwszą opcję wyników, aby zainstalować pakiet w projekcie.

4.2 Korzystanie z wiersza poleceń programu Visual Studio

W Visual Studio przejdź do Narzędzia -> Menedżer pakietów NuGet -> Konsola menedżera pakietów

Wprowadź następujący wiersz w zakładce konsoli menedżera pakietów:

Install-Package DevExpress.Win.PdfViewer

Następnie naciśnij Enter. Spowoduje to wyświetlenie okna logowania, jak pokazano poniżej. Musimy wprowadzić nazwę użytkownika jako DevExpress, a hasło można uzyskać z URL DevExpress. To autoryzuje DevExpress do kontaktu z serwerem w celu pobrania.

Devexpress Pdf Viewer Alternatives 9 related to 4.2 Korzystanie z wiersza poleceń programu Visual Studio

Następnie pakiet zostanie pobrany/zainstalowany do bieżącego projektu i będzie gotowy do użycia.

4.3 Bezpośrednie pobieranie z witryny DevExpress

Odwiedź stronę wersji próbnej produktu DevExpress, a zostaniesz przekierowany na listę opcji DLL dostępnych do pobrania najnowszego pakietu bezpośrednio z witryny dla różnych środowisk framework .NET; możesz wybrać wymagany pakiet do pobrania. Po pobraniu wykonaj poniższe kroki, aby dodać pakiet do projektu.

Po pobraniu pliku, kliknij dwukrotnie pobrany plik, a rozpocznie się konfiguracja, jak na poniższym obrazku:

Następnie kliknij przycisk instalacji, a pojawi się nowe okno pop-up.

Wybierz wymaganą opcję do instalacji.

Devexpress Pdf Viewer Alternatives 10 related to 4.3 Bezpośrednie pobieranie z witryny DevExpress

Następnie zaakceptuj licencję, a instalacja zostanie ukończona po kilku minutach.

5.0 Tworzenie pliku PDF za pomocą IronPDF

Możemy łatwo generować dokumenty PDF za pomocą IronPDF — wygeneruje on plik HTML z adresu URL i przekształci go na PDF.

Poniższe kroki ułatwiają generowanie dokumentów PDF.

using IronPdf;

// Create an instance of the ChromePdfRenderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();

// Render a URL as a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");

// Alternatively, do the above in a single line
new ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf");
using IronPdf;

// Create an instance of the ChromePdfRenderer
ChromePdfRenderer Renderer = new ChromePdfRenderer();

// Render a URL as a PDF and save it
var Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/");
Pdf.SaveAs("result.pdf");

// Alternatively, do the above in a single line
new ChromePdfRenderer().RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf");
Imports IronPdf

' Create an instance of the ChromePdfRenderer
Private Renderer As New ChromePdfRenderer()

' Render a URL as a PDF and save it
Private Pdf = Renderer.RenderUrlAsPdf("https://www.google.co.in/")
Pdf.SaveAs("result.pdf")

' Alternatively, do the above in a single line
Call (New ChromePdfRenderer()).RenderUrlAsPdf("https://www.google.co.in/").SaveAs("result.pdf")
$vbLabelText   $csharpLabel

W powyższym przykładzie możemy użyć dwóch metod do przekształcenia linku w dokument. Jedną z metod jest wygenerowanie dokumentu poprzez utworzenie obiektu IronPDF, a drugą metodą jest utworzenie obiektu dla RenderUrlAsPdf.

Powyższe pokazuje, że możemy przekształcić to na dokument za pomocą RenderUrlAsPdf. Potrzebujemy jedynie podać link i lokalizację zapisu.

6.0 Tworzenie PDF z ciągów HTML za pomocą IronPDF

Możemy przekształcać ciągi HTML w dokumenty PDF przy pomocy IronPDF. Poniżej znajduje się przykład jak przekształcić ciąg HTML w dokument. Posiada także możliwość przekształcenia dowolnego tagu HTML na PDF.

using IronPdf;

// Render an HTML string as a PDF and save it
new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf");
using IronPdf;

// Render an HTML string as a PDF and save it
new ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf");
Imports IronPdf

' Render an HTML string as a PDF and save it
Call (New ChromePdfRenderer()).RenderHtmlAsPdf("<h1>Hello world!!</h1>").SaveAs("result.pdf")
$vbLabelText   $csharpLabel

Poprzedni przykład pokazuje, jak użyć RenderHtmlAsPdf do przekształcenia ciągu HTML. Dodatkowo, możemy podać dowolną liczbę kodów HTML do funkcji konwertującej HTML na ciąg. Możemy zapisać dokument po pobraniu ciągu, korzystając z funkcji 'zapisz jako'.

Macierz możliwości Bootstrap

Narzędzia do generowania PDF muszą wspierać nowoczesne frameworki internetowe dla aplikacji korporacyjnych. Demonstracja Bootstrap 5 pokazuje kompleksowy zestaw funkcji IronPDF używając grup list i odznak statusu.

using IronPdf;

var renderer = new ChromePdfRenderer();

string capabilityMatrix = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
        .capability-item.supported { border-left-color: #198754; }
        .capability-item.limited { border-left-color: #ffc107; }
        @media print { .list-group-item { page-break-inside: avoid; } }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-4'>
        <div class='card shadow-sm mb-4'>
            <div class='card-header bg-primary text-white'>
                <h3 class='mb-0'>PDF Library Feature Comparison</h3>
            </div>
            <div class='card-body'>
                <div class='row'>
                    <div class='col-md-6'>
                        <h5 class='text-primary mb-3'>Rendering Capabilities</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
                                <span class='badge bg-success align-self-center'>Full</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
                                <span class='badge bg-success align-self-center'>Native</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
                                <span class='badge bg-success align-self-center'>V8 Engine</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
                                <span class='badge bg-success align-self-center'>Complete</span>
                            </li>
                        </ul>
                    </div>

                    <div class='col-md-6'>
                        <h5 class='text-success mb-3'>Document Operations</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
                                <span class='badge bg-success align-self-center'>Available</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
                                <span class='badge bg-success align-self-center'>Advanced</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
                                <span class='badge bg-success align-self-center'>Full Support</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
                                <span class='badge bg-success align-self-center'>AES-256</span>
                            </li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-3'>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
                        <ul class='mb-0'>
                            <li>Chrome-based rendering for accuracy</li>
                            <li>Complete Bootstrap 5 compatibility</li>
                            <li>Cross-platform deployment ready</li>
                            <li>Intuitive API with extensive docs</li>
                        </ul>
                    </div>
                </div>
            </div>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100 bg-light'>
                    <div class='card-body'>
                        <h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
                        <ul class='mb-0'>
                            <li>PDF Viewer control focused on display</li>
                            <li>DevExpress.Pdf library for programmatic operations</li>
                            <li>Requires UI suite subscription</li>
                            <li>Complex licensing model</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(capabilityMatrix);
pdf.SaveAs("capability-matrix.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

string capabilityMatrix = @"
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
        .capability-item.supported { border-left-color: #198754; }
        .capability-item.limited { border-left-color: #ffc107; }
        @media print { .list-group-item { page-break-inside: avoid; } }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-4'>
        <div class='card shadow-sm mb-4'>
            <div class='card-header bg-primary text-white'>
                <h3 class='mb-0'>PDF Library Feature Comparison</h3>
            </div>
            <div class='card-body'>
                <div class='row'>
                    <div class='col-md-6'>
                        <h5 class='text-primary mb-3'>Rendering Capabilities</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
                                <span class='badge bg-success align-self-center'>Full</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
                                <span class='badge bg-success align-self-center'>Native</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
                                <span class='badge bg-success align-self-center'>V8 Engine</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
                                <span class='badge bg-success align-self-center'>Complete</span>
                            </li>
                        </ul>
                    </div>

                    <div class='col-md-6'>
                        <h5 class='text-success mb-3'>Document Operations</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
                                <span class='badge bg-success align-self-center'>Available</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
                                <span class='badge bg-success align-self-center'>Advanced</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
                                <span class='badge bg-success align-self-center'>Full Support</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
                                <span class='badge bg-success align-self-center'>AES-256</span>
                            </li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-3'>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
                        <ul class='mb-0'>
                            <li>Chrome-based rendering for accuracy</li>
                            <li>Complete Bootstrap 5 compatibility</li>
                            <li>Cross-platform deployment ready</li>
                            <li>Intuitive API with extensive docs</li>
                        </ul>
                    </div>
                </div>
            </div>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100 bg-light'>
                    <div class='card-body'>
                        <h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
                        <ul class='mb-0'>
                            <li>PDF Viewer control focused on display</li>
                            <li>DevExpress.Pdf library for programmatic operations</li>
                            <li>Requires UI suite subscription</li>
                            <li>Complex licensing model</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>";

var pdf = renderer.RenderHtmlAsPdf(capabilityMatrix);
pdf.SaveAs("capability-matrix.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

Dim capabilityMatrix As String = "
<!DOCTYPE html>
<html>
<head>
    <meta charset='utf-8'>
    <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css' rel='stylesheet'>
    <style>
        .capability-item { border-left: 4px solid transparent; transition: all 0.2s; }
        .capability-item.supported { border-left-color: #198754; }
        .capability-item.limited { border-left-color: #ffc107; }
        @media print { .list-group-item { page-break-inside: avoid; } }
    </style>
</head>
<body class='bg-light'>
    <div class='container py-4'>
        <div class='card shadow-sm mb-4'>
            <div class='card-header bg-primary text-white'>
                <h3 class='mb-0'>PDF Library Feature Comparison</h3>
            </div>
            <div class='card-body'>
                <div class='row'>
                    <div class='col-md-6'>
                        <h5 class='text-primary mb-3'>Rendering Capabilities</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>HTML5 Support</strong><br><small class='text-muted'>Modern semantic elements</small></span>
                                <span class='badge bg-success align-self-center'>Full</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>CSS3 Layouts</strong><br><small class='text-muted'>Flexbox and Grid</small></span>
                                <span class='badge bg-success align-self-center'>Native</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>JavaScript</strong><br><small class='text-muted'>Dynamic content rendering</small></span>
                                <span class='badge bg-success align-self-center'>V8 Engine</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Web Fonts</strong><br><small class='text-muted'>Google Fonts, custom fonts</small></span>
                                <span class='badge bg-success align-self-center'>Complete</span>
                            </li>
                        </ul>
                    </div>

                    <div class='col-md-6'>
                        <h5 class='text-success mb-3'>Document Operations</h5>
                        <ul class='list-group list-group-flush'>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Merge/Split</strong><br><small class='text-muted'>Combine or extract pages</small></span>
                                <span class='badge bg-success align-self-center'>Available</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Watermarking</strong><br><small class='text-muted'>Text and image stamps</small></span>
                                <span class='badge bg-success align-self-center'>Advanced</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Form Fields</strong><br><small class='text-muted'>Interactive PDF forms</small></span>
                                <span class='badge bg-success align-self-center'>Full Support</span>
                            </li>
                            <li class='list-group-item capability-item supported d-flex justify-content-between'>
                                <span><strong>Security</strong><br><small class='text-muted'>Encryption and signatures</small></span>
                                <span class='badge bg-success align-self-center'>AES-256</span>
                            </li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>

        <div class='row g-3'>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100'>
                    <div class='card-body'>
                        <h5 class='card-title text-primary'>✓ IronPDF Strengths</h5>
                        <ul class='mb-0'>
                            <li>Chrome-based rendering for accuracy</li>
                            <li>Complete Bootstrap 5 compatibility</li>
                            <li>Cross-platform deployment ready</li>
                            <li>Intuitive API with extensive docs</li>
                        </ul>
                    </div>
                </div>
            </div>
            <div class='col-md-6'>
                <div class='card shadow-sm h-100 bg-light'>
                    <div class='card-body'>
                        <h5 class='card-title text-warning'>⚠ DevExpress Notes</h5>
                        <ul class='mb-0'>
                            <li>PDF Viewer control focused on display</li>
                            <li>DevExpress.Pdf library for programmatic operations</li>
                            <li>Requires UI suite subscription</li>
                            <li>Complex licensing model</li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>
</html>"

Dim pdf = renderer.RenderHtmlAsPdf(capabilityMatrix)
pdf.SaveAs("capability-matrix.pdf")
$vbLabelText   $csharpLabel

Wyjście: Kompletna macierz możliwości PDF z grupami list, odznakami i układami kart w Bootstrap 5. IronPDF doskonale renderuje wszystkie klasy narzędziowe, uzasadnienie flexbox i systemy siatki responsywnej, pokazując znakomite wsparcie dla frameworka Bootstrap.

Więcej informacji na temat wsparcia Bootstrap znajduje się w Przewodniku CSS Bootstrap & Flexbox.

7.0 Odczyt PDF za pomocą IronPDF

IronPDF to program, który pozwala nam czytać istniejące pliki PDF. Poniżej znajduje się przykład wykorzystania IronPDF do odczytania istniejącego pliku PDF.

using IronPdf;

// Read an existing PDF file
var pdfDocument = PdfDocument.FromFile("result.pdf");

// Extract all text from the PDF
string AllText = pdfDocument.ExtractAllText();
using IronPdf;

// Read an existing PDF file
var pdfDocument = PdfDocument.FromFile("result.pdf");

// Extract all text from the PDF
string AllText = pdfDocument.ExtractAllText();
Imports IronPdf

' Read an existing PDF file
Private pdfDocument = PdfDocument.FromFile("result.pdf")

' Extract all text from the PDF
Private AllText As String = pdfDocument.ExtractAllText()
$vbLabelText   $csharpLabel

Metoda FromFile jest używana do odczytu PDF z istniejącego pliku i przekształcenia go w obiekt PdfDocument, jak pokazano w powyższym kodzie. Możemy czytać tekst i obrazy dostępne na stronach PDF za pomocą tego obiektu. Obiekt posiada metodę o nazwie ExtractAllText, która wyodrębnia cały tekst z dokumentu PDF do ciągu.

8.0 Tworzenie aplikacji do przeglądania PDF

Aplikację do przeglądania PDF można utworzyć za pomocą następujących kroków:

  1. Utwórz nowy projekt aplikacji Windows Forms w Microsoft® Visual Studio.
  2. Na formularzu przeciągnij element wstawki PDF Viewer z menu narzędziowego DX.21.2: Common Controls.
Devexpress Pdf Viewer Alternatives 11 related to 8.0 Tworzenie aplikacji do przeglądania PDF
  1. W menu zadań kontrolki PDF Viewer kliknij inteligentną etykietę dla PDF Viewer i wybierz opcję 'Zadokuj w kontenerze nadrzędnym'. Powoduje to powiększenie PDF Viewer do rozmiaru formularza.
Devexpress Pdf Viewer Alternatives 12 related to 8.0 Tworzenie aplikacji do przeglądania PDF
  1. Aby używać kontrolki PDF Viewer, musisz najpierw załadować dokument. Aby uzyskać dostęp do listy działań PDF Viewer, kliknij jej inteligentną etykietę. Kliknij opcję Ładuj PDF na liście działań.
Devexpress Pdf Viewer Alternatives 13 related to 8.0 Tworzenie aplikacji do przeglądania PDF
  1. Zostanie wyświetlone okno dialogowe 'Otwórz'. Znajdź dokument do otwarcia w tym oknie dialogowym i kliknij Otwórz.

Możemy wykonywać następujące zadania za pomocą kontrolek:

Nawigacja po plikach PDF

Łatwe nawigowanie i eksplorowanie pliku PDF. Kontrolki Viewer wyposażone są w szeroki zakres opcji nawigacji po dokumentach, w tym:

  • Zakładki i linki
  • Panel nawigacji (dostosowany interfejs nawigacji po dokumentach)
  • Miniatury dla wszystkich stron
  • Interfejs z wstążką

Viewer śledzi wszystkie odwiedzane strony i umożliwia użytkownikom przełączanie się między nimi w miarę potrzeby. Można także korzystać z panelu znajdywania, aby szukać treści PDF, dokładnie tak jak w Adobe Reader (opcje obejmują wyszukiwanie rozróżniające wielkość liter i wyszukiwanie całych słów).

Badanie i komentowanie

Użytkownicy mają możliwość dodawania, edytowania i usuwania komentarzy. Viewer dla WinForms ma pełny zestaw funkcji adnotacji, w tym podkreślacz tekstu i samoprzylepne karteczki.

  • Współpracuj bez trudności
  • Dodatkowe funkcje/opcje obejmują:
  • Można dodawać odpowiedzi i recenzje
  • Skonfiguruj opcje narzędzia adnotacji (kolor i przezroczystość)
  • Komentarze można sortować, filtrować i wyszukiwać
  • Kompleksowe API
  • Powiększ i pomniejsz za pomocą DevExpress.

Formularz PDF do wypełnienia

AcroForms pozwalają na edycję dokumentów. Po dodaniu Viewera do projektu WinForms, użytkownicy będą mogli edytować każdy PDF, który zawiera dane pól formularza. Każde pole w Viewerze jest wyświetlane zgodnie z typem formularza, do którego należy, np. pole tekstowe, przycisk radiowy, pole kombi z autouzupełnianiem, pole wyboru i listy.

Można importować i eksportować do następujących formatów, jeśli PDF zawiera dane AcroForm: FDF, XFDF, XML i TXT.

Otwieranie i zapisywanie załączonych plików

W panelu nawigacji DevExpress PDF Viewers wyświetlane są powiązane pliki. PDF załączony do pliku można otworzyć i zapisać na dysku. Podczas otwierania pliku powiązanego z PDF Viewer ma także opcję wyświetlenia ostrzeżenia o bezpieczeństwie.

Drukowanie PDF

Viewer posiada dialog podglądu wydruku zawierający pełen zestaw opcji druku inspirowanych Adobe. Należą do nich podgląd w czasie rzeczywistym, wybór zakresu stron, ustawienia DPI i orientacja.

9.0 Wniosek

W tym artykule porównaliśmy IronPDF i DevExpress. Istnieje wiele wspólnych cech dostępnych w obu bibliotekach. IronPDF uwzględnia ustawienia Chrome użytkownika, aby renderować HTML, ale DevExpress działa na oddzielnym silniku, który ignoruje bieżące ustawienia użytkownika do renderowania HTML. IronPDF może renderować HTML szybciej niż DevExpress.

Pod względem wydajności IronPDF jest szybszy niż DevExpress w zadaniach generowania HTML-do-PDF. Kontrolka PDF Viewer DevExpress skupia się na wyświetlaniu dokumentów, podczas gdy DevExpress.Pdf zapewnia programatyczne możliwości PDF. Zasięg redystrybucji bez opłat licencyjnych jest dostępny w IronPDF za dodatkową opłatą; sprawdź warunki licencyjne DevExpress dla szczegółów dotyczących redystrybucji. IronPDF oferuje znacznie więcej funkcji generowania HTML-do-PDF w porównaniu z kontrolkami PDF DevExpress.

W konkluzji, preferujemy IronPDF ze względu na jego wysoki poziom wydajności i szeroką gamę dostępnych funkcji dla deweloperów pracujących z PDF. IronPDF także zapewnia dobre wsparcie i dokumentację, które zapewniają użytkownikom pełne i efektywne wykorzystanie imponującego zestawu oferowanych funkcji.

Zwróć uwagęSyncfusion Essential PDF, Aspose.PDF, GemBox.Pdf i PdfiumViewer są zarejestrowanymi znakami towarowymi swoich właścicieli. Ta strona nie jest powiązana, autoryzowana ani sponsorowana przez Syncfusion Essential PDF, Aspose.PDF, GemBox.Pdf ani PdfiumViewer. 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.

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ą różnice między IronPDF a DevExpress PDF Viewer?

IronPDF to wszechstronne narzędzie do tworzenia, odczytu i edycji plików PDF na wielu platformach, oferujące rozbudowane możliwości konwersji HTML do PDF. Natomiast DevExpress PDF Viewer koncentruje się przede wszystkim na przeglądaniu plików PDF i obsługuje dodawanie adnotacji do dokumentów oraz wypełnianie formularzy.

Czy mogę wyodrębnić tekst i obrazy z istniejącego pliku PDF za pomocą biblioteki?

Tak, IronPDF umożliwia wyodrębnianie tekstu i obrazów z istniejących plików PDF za pomocą swojego kompleksowego interfejsu API.

Jakie platformy obsługują IronPDF do zarządzania plikami PDF?

IronPDF obsługuje szeroki zakres platform, w tym aplikacje Windows Forms, ASP.NET, .NET Core, WPF, Xamarin, Blazor, Unity i HoloLens.

Jak zainstalować IronPDF w projekcie .NET?

IronPDF można zainstalować w projekcie .NET za pomocą menedżera pakietów NuGet w Visual Studio, wiersza poleceń Visual Studio lub pobierając go bezpośrednio ze stron internetowych NuGet lub IronPDF.

Dlaczego programiści mieliby wybrać IronPDF zamiast DevExpress PDF Viewer?

Programiści mogą preferować IronPDF ze względu na jego rozbudowane funkcje, w tym konwersję HTML do PDF, tworzenie interaktywnych plików PDF oraz wysoką wydajność. Oferuje on również doskonałe wsparcie techniczne i dokumentację, co sprawia, że jest preferowanym wyborem w porównaniu z DevExpress.

Jakie są typowe scenariusze rozwiązywania problemów podczas korzystania z bibliotek PDF?

Typowe scenariusze rozwiązywania problemów obejmują zapewnienie prawidłowej instalacji biblioteki, sprawdzenie zgodności z Wersją .NET oraz obsługę wyjątków związanych ze ścieżkami plików lub uprawnieniami podczas tworzenia lub konwersji plików PDF.

Na jakie funkcje należy zwrócić uwagę w bibliotece do zarządzania plikami PDF?

Kluczowe funkcje, które należy wziąć pod uwagę, to konwersja HTML do PDF, wyodrębnianie tekstu i obrazów, interaktywne formularze, opcje dostosowywania dokumentów oraz obsługa różnych platform. IronPDF oferuje wszystkie te funkcje, co czyni go kompleksowym rozwiązaniem do zarządzania plikami PDF.

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ę...

Czytaj więcej

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie