Przejdź do treści stopki
KORZYSTANIE Z IRONPDF

Jak stworzyć przeglądarkę PDF w ASP.NET Core

Tworzenie przeglądarki plików PDF w ASP.NET Core nie powinno wymagać skomplikowanych bibliotek JavaScript ani wtyczek przeglądarek innych firm. Nowoczesne aplikacje internetowe potrzebują niezawodnego sposobu wyświetlania plików PDF bezpośrednio w przeglądarce, niezależnie od tego, czy chodzi o faktury, raporty czy interaktywne dokumenty PDF. IronPDF upraszcza ten proces, wykorzystując wbudowane funkcje przeglądarki do wyświetlania plików PDF, jednocześnie generując pliki PDF o idealnej rozdzielczości po stronie serwera.

W tym artykule pokażemy, jak generować i przeglądać dokumenty PDF w ramach projektów ASP.NET Core, pokazując, jak tworzyć aplikacje do przeglądania plików PDF, które mogą wyświetlać dowolny plik PDF.

Czym jest przeglądarka plików PDF dla ASP.NET Core?

Przeglądarka plików PDF ASP.NET Core umożliwia użytkownikom przeglądanie dokumentów PDF bezpośrednio w aplikacjach internetowych bez konieczności pobierania plików na swoje urządzenie. Zamiast zmagać się z komponentami przeglądarki dokumentów opartymi na JavaScript, IronPDF stosuje zaskakująco proste podejście: generuje wysokiej jakości pliki PDF po stronie serwera przy użyciu silnika renderującego Chrome, a następnie udostępnia je z odpowiednimi nagłówkami, dzięki czemu przeglądarki automatycznie wyświetlają pliki PDF w trybie inline.

To podejście po stronie serwera oznacza, że przeglądarka plików PDF ASP.NET Core działa spójnie we wszystkich przeglądarkach bez dodatkowych wtyczek, takich jak Adobe Acrobat Reader. Ponieważ IronPDF korzysta z tego samego silnika Chrome, który napędza miliony przeglądarek, dokumenty PDF są renderowane dokładnie tak, jak zamierzono, z zachowaniem stylów CSS, interakcji JavaScript i złożonych układów. Integracja ASP.NET Core z formatem PDF obsługuje wszystko, od konwersji HTML do PDF po bezpieczne dostarczanie dokumentów, zapewniając długoterminowe wsparcie.

Jak zainstalować IronPDF w swojej aplikacji internetowej?

Zainstalowanie IronPDF w aplikacji internetowej .NET Core wymaga tylko jednego polecenia menedżera pakietów NuGet. Otwórz konsolę menedżera pakietów w Visual Studio i uruchom:

Install-Package IronPdf

Po instalacji skonfiguruj IronPDF w pliku Program.cs, aby ustawić klucz licencyjny:

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"; // Start with a free trial key
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"; // Start with a free trial key
Imports IronPdf

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY" ' Start with a free trial key
$vbLabelText   $csharpLabel

Ta prosta konfiguracja zapewnia dostęp do pełnej funkcjonalności przeglądarki PDF IronPDF dla platformy .NET Core. Biblioteka automatycznie obsługuje wdrażanie silnika Chrome i zapewnia przejrzysty interfejs API do generowania i wyświetlania plików PDF w aplikacjach ASP.NET Core.

Jak stworzyć podstawową przeglądarkę dokumentów PDF?

Stworzenie pierwszej przeglądarki plików PDF w .NET Core wymaga minimalnej ilości kodu. Oto kontroler, który konwertuje zawartość HTML na dokument PDF do przeglądania:

using IronPdf;
using Microsoft.AspNetCore.Mvc;

public class PdfController : Controller
{
    public IActionResult ViewDocument()
    {
        var renderer = new ChromePdfRenderer();

        // Create PDF from HTML string
        var html = @"
            <html>
                <body style='font-family: Arial; padding: 20px;'>
                    <h1>Invoice #2024-001</h1>
                    <p>This PDF document is displayed directly in your browser.</p>
                    <table style='width: 100%; border-collapse: collapse;'>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Item</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Price</td>
                        </tr>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Service</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>$99.00</td>
                        </tr>
                    </table>
                </body>
            </html>";
        var pdf = renderer.RenderHtmlAsPdf(html);

        // Return PDF for inline viewing
        Response.Headers.Add("Content-Disposition", "inline; filename=invoice.pdf");
        return File(pdf.BinaryData, "application/pdf");
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;

public class PdfController : Controller
{
    public IActionResult ViewDocument()
    {
        var renderer = new ChromePdfRenderer();

        // Create PDF from HTML string
        var html = @"
            <html>
                <body style='font-family: Arial; padding: 20px;'>
                    <h1>Invoice #2024-001</h1>
                    <p>This PDF document is displayed directly in your browser.</p>
                    <table style='width: 100%; border-collapse: collapse;'>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Item</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Price</td>
                        </tr>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Service</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>$99.00</td>
                        </tr>
                    </table>
                </body>
            </html>";
        var pdf = renderer.RenderHtmlAsPdf(html);

        // Return PDF for inline viewing
        Response.Headers.Add("Content-Disposition", "inline; filename=invoice.pdf");
        return File(pdf.BinaryData, "application/pdf");
    }
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc

Public Class PdfController
    Inherits Controller

    Public Function ViewDocument() As IActionResult
        Dim renderer = New ChromePdfRenderer()

        ' Create PDF from HTML string
        Dim html = "
            <html>
                <body style='font-family: Arial; padding: 20px;'>
                    <h1>Invoice #2024-001</h1>
                    <p>This PDF document is displayed directly in your browser.</p>
                    <table style='width: 100%; border-collapse: collapse;'>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Item</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Price</td>
                        </tr>
                        <tr>
                            <td style='border: 1px solid #ddd; padding: 8px;'>Service</td>
                            <td style='border: 1px solid #ddd; padding: 8px;'>$99.00</td>
                        </tr>
                    </table>
                </body>
            </html>"
        Dim pdf = renderer.RenderHtmlAsPdf(html)

        ' Return PDF for inline viewing
        Response.Headers.Add("Content-Disposition", "inline; filename=invoice.pdf")
        Return File(pdf.BinaryData, "application/pdf")
    End Function
End Class
$vbLabelText   $csharpLabel

Klasa ChromePdfRenderer obsługuje proces konwersji, przekształcając kod HTML w dokument PDF. Ustawienie nagłówka Content-Disposition na "inline" powoduje, że przeglądarka wyświetla plik PDF zamiast go pobierać, tworząc płynne doświadczenie przeglądania plików PDF, w którym użytkownicy mogą przeglądać pliki PDF bezpośrednio w swojej aplikacji internetowej.

Wygenerowany dokument PDF w przeglądarce

Jak stworzyć przeglądarkę plików PDF w ASP.NET Core: Rysunek 1 – Plik PDF w naszej przeglądarce plików PDF

Jak wyświetlać pliki PDF z różnych źródeł?

Przeglądarka plików PDF ASP.NET Core może generować pliki PDF z wielu źródeł pakietów. Oto jak przekonwertować adres URL na plik PDF do przeglądania:

public IActionResult ViewFromUrl(string websiteUrl)
{
    var renderer = new ChromePdfRenderer();

    // Configure rendering options
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.WaitFor.RenderDelay = 2000; // Wait for content to load
    var pdf = renderer.RenderUrlAsPdf(websiteUrl);
    Response.Headers.Add("Content-Disposition", "inline");
    return File(pdf.BinaryData, "application/pdf");
}
public IActionResult ViewFromUrl(string websiteUrl)
{
    var renderer = new ChromePdfRenderer();

    // Configure rendering options
    renderer.RenderingOptions.EnableJavaScript = true;
    renderer.RenderingOptions.WaitFor.RenderDelay = 2000; // Wait for content to load
    var pdf = renderer.RenderUrlAsPdf(websiteUrl);
    Response.Headers.Add("Content-Disposition", "inline");
    return File(pdf.BinaryData, "application/pdf");
}
Imports IronPdf

Public Function ViewFromUrl(websiteUrl As String) As IActionResult
    Dim renderer As New ChromePdfRenderer()

    ' Configure rendering options
    renderer.RenderingOptions.EnableJavaScript = True
    renderer.RenderingOptions.WaitFor.RenderDelay = 2000 ' Wait for content to load
    Dim pdf = renderer.RenderUrlAsPdf(websiteUrl)
    Response.Headers.Add("Content-Disposition", "inline")
    Return File(pdf.BinaryData, "application/pdf")
End Function
$vbLabelText   $csharpLabel

Wynik

Jak stworzyć przeglądarkę plików PDF dla ASP.NET Core: Rysunek 2 – Plik PDF wygenerowany z adresu URL i wyświetlony w naszej przeglądarce plików PDF

W przypadku istniejących plików PDF przechowywanych na serwerze można je łatwo załadować i wyświetlić. Ten przykładowy kod pokazuje, jak pracować z plikami w folderze wwwroot:

public IActionResult ViewExistingPdf(string fileName)
{
    // Load PDF from wwwroot folder
    var pdfPath = Path.Combine(_webHostEnvironment.WebRootPath, "documents", fileName);
    var pdf = PdfDocument.FromFile(pdfPath);   
    // Optional: Add modifications like watermarks
    pdf.ApplyWatermark("<h2 style='color: red; opacity: 0.5;'>CONFIDENTIAL</h2>");
    return File(pdf.BinaryData, "application/pdf");
}
public IActionResult ViewExistingPdf(string fileName)
{
    // Load PDF from wwwroot folder
    var pdfPath = Path.Combine(_webHostEnvironment.WebRootPath, "documents", fileName);
    var pdf = PdfDocument.FromFile(pdfPath);   
    // Optional: Add modifications like watermarks
    pdf.ApplyWatermark("<h2 style='color: red; opacity: 0.5;'>CONFIDENTIAL</h2>");
    return File(pdf.BinaryData, "application/pdf");
}
Public Function ViewExistingPdf(fileName As String) As IActionResult
    ' Load PDF from wwwroot folder
    Dim pdfPath = Path.Combine(_webHostEnvironment.WebRootPath, "documents", fileName)
    Dim pdf = PdfDocument.FromFile(pdfPath)
    ' Optional: Add modifications like watermarks
    pdf.ApplyWatermark("<h2 style='color: red; opacity: 0.5;'>CONFIDENTIAL</h2>")
    Return File(pdf.BinaryData, "application/pdf")
End Function
$vbLabelText   $csharpLabel

Jak stworzyć przeglądarkę plików PDF w .NET Core: Rysunek 3 – Wyświetlanie istniejącego pliku PDF (z naszym dodanym znakiem wodnym)

Ta elastyczność oznacza, że przeglądarka PDF może obsługiwać zarówno treści generowane dynamicznie, jak i istniejące dokumenty PDF przechowywane w folderze wwwroot lub bazie danych. Komponent płynnie integruje się z architekturą .NET Core.

Jak dodać zaawansowane funkcje przeglądarki PDF?

IronPDF przekształca podstawową przeglądarkę plików PDF w potężną przeglądarkę dokumentów z zaawansowanymi funkcjami. Dodanie formularzy do plików PDF umożliwia interaktywną funkcjonalność, którą użytkownicy mogą wypełniać bezpośrednio:

public IActionResult CreateFormPdf()
{
    var html = @"
        <html>
            <body>
                <h2>Application Form</h2>
                <form>
                    Name: 
                    <br><br>
                    Email: 
                    <br><br>
                    <input type='checkbox'> I agree to terms
                </form>
            </body>
        </html>";
    var renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.CreatePdfFormsFromHtml = true; // Enable form fields
    var pdf = renderer.RenderHtmlAsPdf(html);
    return File(pdf.BinaryData, "application/pdf");
}
public IActionResult CreateFormPdf()
{
    var html = @"
        <html>
            <body>
                <h2>Application Form</h2>
                <form>
                    Name: 
                    <br><br>
                    Email: 
                    <br><br>
                    <input type='checkbox'> I agree to terms
                </form>
            </body>
        </html>";
    var renderer = new ChromePdfRenderer();
    renderer.RenderingOptions.CreatePdfFormsFromHtml = true; // Enable form fields
    var pdf = renderer.RenderHtmlAsPdf(html);
    return File(pdf.BinaryData, "application/pdf");
}
Public Function CreateFormPdf() As IActionResult
    Dim html As String = "
        <html>
            <body>
                <h2>Application Form</h2>
                <form>
                    Name: 
                    <br><br>
                    Email: 
                    <br><br>
                    <input type='checkbox'> I agree to terms
                </form>
            </body>
        </html>"
    Dim renderer As New ChromePdfRenderer()
    renderer.RenderingOptions.CreatePdfFormsFromHtml = True ' Enable form fields
    Dim pdf = renderer.RenderHtmlAsPdf(html)
    Return File(pdf.BinaryData, "application/pdf")
End Function
$vbLabelText   $csharpLabel

Wynik z formularzem do wypełnienia

Jak stworzyć przeglądarkę plików PDF w ASP.NET Core: Rysunek 4

Gdy użytkownicy otworzą ten plik PDF w przeglądarce, będą mogli wypełnić formularze bezpośrednio, bez konieczności korzystania z zewnętrznych narzędzi. Można również edytować pliki PDF, dodając nagłówki, stopki, numery stron lub podpisy cyfrowe. Podejście oparte na tagach pomocniczych ułatwia dodawanie tych funkcji:

// Add headers and page numbers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Company Report</div>",
    MaxHeight = 25
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Page {page} of {total-pages}</div>",
    MaxHeight = 25
};
// Add headers and page numbers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Company Report</div>",
    MaxHeight = 25
};
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align: center;'>Page {page} of {total-pages}</div>",
    MaxHeight = 25
};
Imports System

' Add headers and page numbers
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
    .HtmlFragment = "<div style='text-align: center;'>Company Report</div>",
    .MaxHeight = 25
}
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
    .HtmlFragment = "<div style='text-align: center;'>Page {page} of {total-pages}</div>",
    .MaxHeight = 25
}
$vbLabelText   $csharpLabel

Funkcje te przekształcają przeglądarkę plików PDF ASP.NET w kompleksowe rozwiązanie do zarządzania dokumentami, obsługujące wszystko, od prostego wyświetlania po złożone operacje edycji, w tym zaznaczanie tekstu i funkcje PRINT. Dzięki funkcjom konwersji IronPDF możesz nawet pracować z innymi formatami, takimi jak pliki Excel, WORD, DOCX i PowerPoint.

Wnioski

Stworzenie przeglądarki plików PDF dla ASP.NET Core przy użyciu IronPDF eliminuje złożoność rozwiązań opartych na JavaScript, zapewniając jednocześnie profesjonalną obsługę dokumentów PDF. Wykorzystując natywne możliwości przeglądarki i silnik renderujący Chrome, można tworzyć, wyświetlać i zarządzać plikami PDF za pomocą zaledwie kilku wierszy kodu — bez konieczności stosowania domyślnych konfiguracji lub skomplikowanych ustawień.

Połączenie generowania po stronie serwera i przeglądania w przeglądarce zapewnia idealną równowagę między obsługą, wydajnością i komfortem użytkowania aplikacji internetowych. Niezależnie od tego, czy chcesz wyświetlać pliki PDF, obsługiwać formularze, edytować istniejące dokumenty czy drukować pliki PDF, proste API IronPDF ułatwia wdrożenie. Biblioteka jest często aktualizowana w celu zapewnienia zgodności z najnowszymi .NET Frameworkami i środowiskami Windows.

Chcesz stworzyć własną przeglądarkę plików PDF w swoim projekcie ASP.NET Core? Zacznij od bezpłatnej wersji próbnej, aby znaleźć odpowiedni plan. Potrzebujesz pomocy na początek? Zapoznaj się z tym szczegółowym samouczkiem lub przejrzyj pełną dokumentację, aby uzyskać więcej przykładów.

Często Zadawane Pytania

Jaki jest cel przeglądarki plików PDF dla ASP.NET Core?

Przeglądarka plików PDF dla ASP.NET Core umożliwia wyświetlanie plików PDF bezpośrednio w przeglądarce, ułatwiając użytkownikom przeglądanie dokumentów, takich jak faktury, raporty lub interaktywne pliki PDF, bez konieczności korzystania z zewnętrznych wtyczek.

W jaki sposób IronPDF upraszcza tworzenie przeglądarki plików PDF w ASP.NET Core?

IronPDF upraszcza ten proces, wykorzystując wbudowane funkcje przeglądarki do wyświetlania plików PDF i generując pliki PDF o idealnej rozdzielczości po stronie serwera, co eliminuje potrzebę stosowania skomplikowanych bibliotek JavaScript lub wtyczek innych firm.

Czy IronPDF obsługuje interaktywne dokumenty PDF?

Tak, IronPDF obsługuje interaktywne dokumenty PDF, umożliwiając użytkownikom wypełnianie formularzy i interakcję z treścią PDF bezpośrednio w przeglądarce.

Jakie są zalety korzystania z IronPDF do wyświetlania plików PDF w aplikacjach internetowych?

IronPDF zapewnia niezawodny i wydajny sposób wyświetlania plików PDF w aplikacjach internetowych, oferując funkcje takie jak generowanie plików PDF po stronie serwera oraz płynną integrację z aplikacjami ASP.NET Core.

Czy w przypadku IronPDF konieczne jest stosowanie wtyczek przeglądarkowych innych firm?

Nie, IronPDF wykorzystuje wbudowane funkcje przeglądarki do wyświetlania plików PDF, więc nie ma potrzeby stosowania zewnętrznych wtyczek do przeglądarki w celu wyświetlania plików PDF.

Jakie typy dokumentów PDF można wyświetlać za pomocą przeglądarki PDF ASP.NET Core?

Przeglądarka plików PDF dla .NET Core może wyświetlać różne typy dokumentów PDF, w tym faktury, raporty i interaktywne formularze, bezpośrednio w przeglądarce.

Czy IronPDF obsługuje generowanie plików PDF po stronie serwera?

Tak, IronPDF obsługuje generowanie plików PDF po stronie serwera, zapewniając dokładne i wydajne renderowanie dokumentów przed wyświetleniem ich w przeglądarce.

W jaki sposób IronPDF zapewnia renderowanie plików PDF z dokładnością co do piksela?

IronPDF zapewnia renderowanie plików PDF z dokładnością co do piksela dzięki zastosowaniu zaawansowanych algorytmów i technik, które wiernie odtwarzają wygląd dokumentów generowanych po stronie serwera.

Jaki język programowania jest używany do tworzenia przeglądarki plików PDF ASP.NET Core z wykorzystaniem IronPDF?

Przeglądarka plików PDF ASP.NET Core została zbudowana przy użyciu języka C# i frameworka ASP.NET Core, wykorzystując bibliotekę IronPDF do przetwarzania i wyświetlania plików 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

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie