IRONSOFTWAREHOME
KORZYSTANIE Z IRONPDF

Konwertowanie PDF na TIFF VB .NET i C# Przewodnik

Curtis Chau
Curtis Chau
Updated: 5 lipca 2026

Jak programiści mogą konwertować HTML na PDF w ASP.NET Core?

IronPDF ułatwia konwersję HTML do PDF w ASP.NET Core przy użyciu silnika renderującego Chrome, dzięki czemu można przekształcić dynamiczne treści internetowe, raporty i faktury w precyzyjne pliki PDF za pomocą zaledwie kilku linii kodu — zachowując wszystkie style CSS i funkcjonalność JavaScript.

Masz trudności z uzyskaniem wyraźnych, idealnie dopasowanych raportów i faktur z aplikacji .NET Core? Nie jesteś sam.

Każdy programista w końcu musi przekształcić dynamiczne treści internetowe — takie jak raporty lub potwierdzenia zamówień — w niezawodny plik PDF, który można pobrać. Jest to podstawowy wymóg przy tworzeniu wszelkich dokumentów, od faktur i szczegółowych raportów po bezpieczne formaty dokumentów nadające się do archiwizacji. Wyzwaniem jest sprawienie, by złożony kod HTML, wraz z całym CSS i JavaScriptem, wyświetlał się idealnie w pliku PDF.

Właśnie tu wkracza IronPDF. W tle wykorzystuje silnik renderujący Chrome, więc to, co widzisz w przeglądarce, jest dokładnie tym, co otrzymujesz w pliku PDF. Niezależnie od tego, czy pracujesz ze stronami ASPX, nowoczesnymi widokami Razor, czy surowymi ciągami HTML, proces konwersji jest spójny i przewidywalny.

Ten przewodnik przeprowadzi Cię przez najczęstsze scenariusze konwersji HTML do PDF w ASP.NET Core — konwersję adresów URL do PDF, renderowanie ciągów HTML oraz przetwarzanie plików HTML — wraz z działającymi przykładami kodu w języku C# dla każdego podejścia.

Bezpłatna próba i już dziś zacznij konwertować dokumenty HTML na PDF.

Pierwszy krok:
arrow pointer

Jak dodać bibliotekę PDF do projektu ASP.NET Core?

Instalacja IronPDF wymaga wykonania jednego polecenia w konsoli NuGet Package Manager Console lub za pośrednictwem .NET CLI. IronPDF jest dostępny jako pakiet NuGet i obsługuje platformy .NET 6, 7, 8 oraz 10:

PM > Install-Package IronPdf

Po zainstalowaniu IronPDF zapewnia pełne możliwości renderowania HTML, obsługując nowoczesne elementy HTML, style CSS oraz wykonywanie kodu JavaScript. Biblioteka niezawodnie obsługuje złożone struktury HTML i właściwości CSS, w tym układy Bootstrap i Flex.

IronPDF obsługuje wdrażanie w szerokiej gamie środowisk:

Środowiska wdrożeniowe obsługiwane przez IronPDF
ŚrodowiskoPoziom wsparciaUwagi
WindowsPełnaIIS i hostowane samodzielnie, wszystkie wersje
LinuxPełnaUbuntu, Debian, CentOS, Alpine
macOSPełnaArchitektury Arm i x64
AzurePełnaUsługa aplikacji, funkcje, kontenery
AWS LambdaPełnaGenerowanie plików PDF bez użycia serwerów
DockerPełnaObejmuje opcję zdalnego silnika IronPDF

Po instalacji głównym punktem wejścia jest klasa ChromePdfRenderer. Oferuje wlasciwosc RenderingOptions, gdzie mozna kontrolowac rozmiar papieru, marginesy, naglowki, wykonywanie JavaScript i wiele wiecej. Poniższe sekcje obejmują trzy główne podejścia do konwersji, które będą stosowane w typowej aplikacji ASP.NET Core.

Jak przekonwertować ciąg znaków HTML na dokument PDF?

Bezpośrednia konwersja ciągu znaków HTML do pliku PDF jest najbardziej bezpośrednim podejściem i nie wymaga dostępu do systemu plików. Dzięki temu idealnie nadaje się do generowania plików PDF z dynamicznie składanego kodu HTML — takich jak potwierdzenia zamówień, faktury lub szablony raportów wypełniane danymi z bazy danych.

Poniższy kod przedstawia kompletną akcję kontrolera ASP.NET Core, która konwertuje ciąg znaków HTML na plik PDF przy użyciu IronPDF:

using Microsoft.AspNetCore.Mvc;
using IronPdf;

namespace HtmlToPdf.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult Index()
        {
            return View();
        }

        [HttpGet]
        public IActionResult ConvertHtmlStringToPdf()
        {
            string htmlContent = @"
<html>
  <head>
    <title>IronPDF Test</title>
    <style>
      body { font-family: Arial; margin: 40px; }
      h1 { color: #2b5797; }
      table { border-collapse: collapse; width: 100%; margin-top: 20px; }
      th, td { border: 1px solid #ccc; padding: 8px; }
      th { background: #f0f0f0; }
    </style>
  </head>
  <body>
    <h1>IronPDF HTML to PDF Test</h1>
    <p>This is a simple test of converting an HTML string to PDF using IronPDF.</p>
    <table>
      <tr><th>Item</th><th>Price</th></tr>
      <tr><td>Apples</td><td>$1.50</td></tr>
      <tr><td>Bananas</td><td>$0.90</td></tr>
    </table>
    <p><em>End of test document.</em></p>
  </body>
</html>";
            // Initialize the PDF converter
            var renderer = new ChromePdfRenderer();
            // Configure page size and margins
            renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
            renderer.RenderingOptions.MarginTop = 20;
            renderer.RenderingOptions.MarginBottom = 20;
            // Convert the HTML string to a PDF document
            var pdfDocument = renderer.RenderHtmlAsPdf(htmlContent);
            // Return the PDF file as a download
            return File(pdfDocument.BinaryData, "application/pdf", "output.pdf");
        }
    }
}

Jak wygląda wygenerowany plik PDF?

PDF viewer displaying a test document created with IronPDF, showing a simple table with items (Apples $1.50, Bananas $0.90) demonstrating HTML to PDF conversion

Klasa ChromePdfRenderer obsluguje caly proces konwersji, przeksztalcajac twoj lancuch HTML w prawidlowo sformatowany, wielostronicowy PDF. Wynikowy dokument zachowuje wszystkie elementy stylizacji — wbudowane CSS, osadzone arkusze stylów, a nawet reguły dotyczące czcionek — dokładnie tak, jak zostały zdefiniowane w źródłowym kodzie HTML. Ten wzorzec jest szczególnie skuteczny przy generowaniu faktur, wyciągów i wszelkich dokumentów, których układ kontrolujesz od początku do końca za pomocą kodu.

Możesz rozszerzyć ten wzorzec, aby dodać nagłówki i stopki lub niestandardowe znaki wodne do każdej strony. IronPDF obsługuje również kompresję plików PDF w celu zmniejszenia rozmiarów plików bez utraty jakości wizualnej.

Jak konwertować pliki HTML na pliki PDF?

Podczas pracy z istniejącymi plikami szablonów HTML przechowywanymi na serwerze, IronPDF może je odczytywać i konwertować, zachowując wszystkie powiązane zasoby, takie jak zewnętrzne arkusze stylów, lokalne obrazy i pliki JavaScript. Takie podejście sprawdza się dobrze w przypadku procesów generowania dokumentów opartych na szablonach, w których projektanci zarządzają plikami HTML niezależnie od kodu aplikacji:

using IronPdf;
using Microsoft.AspNetCore.Mvc;
using System.IO;

namespace YourApp.Controllers
{
    public class DocumentController : Controller
    {
        private readonly IWebHostEnvironment _environment;

        public DocumentController(IWebHostEnvironment environment)
        {
            _environment = environment;
        }

        [HttpGet]
        public IActionResult GeneratePdfFromTemplate(string templateName)
        {
            // Resolve the full path to the HTML template
            string htmlFilePath = Path.Combine(_environment.WebRootPath, "templates", $"{templateName}.html");
            var renderer = new ChromePdfRenderer();
            // Use print media type for print-optimized CSS rules
            renderer.RenderingOptions.EnableJavaScript = true;
            renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
            // Add a header to every generated page
            renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
            {
                Height = 25,
                HtmlFragment = "<div style='text-align:center'>Company Report</div>"
            };
            // Convert the HTML file to a PDF document
            var pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath);
            return File(pdf.BinaryData, "application/pdf", $"{templateName}_generated.pdf");
        }
    }
}

Jak wygląda wynik konwersji szablonu?

Podglad PDF pokazujacy comiesieczny raport sprzedazy wygenerowany z HTML, przedstawiajacy tabelę z danymi sprzedazy produktów dla licencji IronPDF, IronOCR i IronXL

To podejście odczytuje dokumenty HTML z dysku i konwertuje je, zachowując pełną strukturę dokumentu. Wszystkie właściwości CSS, odniesienia do obrazów oraz złożone elementy HTML, takie jak tabele i zagnieżdżone kontenery, są zachowane w wynikowym tekście. IronPDF rozpoznaje względne ścieżki zasobów względem lokalizacji pliku źródłowego, dzięki czemu połączone arkusze stylów i obrazy ładują się bez dodatkowej konfiguracji.

IronPDF poprawnie obsługuje również zapytania o media drukarskie CSS, co oznacza, że w szablonach HTML można zdefiniować reguły specyficzne dla drukowania — ukrywanie pasków nawigacyjnych, dostosowywanie rozmiarów czcionek lub włączanie wskazówek dotyczących podziału stron — a będą one stosowane tylko podczas generowania pliku PDF, a nie podczas ładowania strony w przeglądarce.

Jak konwertować strony wymagające uwierzytelnienia?

Aplikacje .NET Core często chronią zawartość za pomocą uwierzytelniania formularzowego. Podczas konwersji stron wymagających ważnej sesji IronPDF może przekazać pliki cookie uwierzytelniające wraz z żądaniem HTTP, dzięki czemu wyświetlana strona odzwierciedla to, co widziałby uwierzytelniony użytkownik:

[Authorize]
public IActionResult ConvertAuthenticatedPage()
{
    var renderer = new ChromePdfRenderer();
    // Build the URL for the protected resource
    string currentUrl = $"{Request.Scheme}://{Request.Host}/SecureContent";
    // Forward the authentication cookie to IronPDF
    var authCookie = Request.Cookies[".AspNetCore.Cookies"];
    if (!string.IsNullOrEmpty(authCookie))
    {
        renderer.RenderingOptions.CustomCookies = new System.Collections.Generic.Dictionary<string, string>
        {
            { ".AspNetCore.Cookies", authCookie }
        };
    }
    // Convert the authenticated page to a PDF file
    var pdf = renderer.RenderUrlAsPdf(currentUrl);
    return File(pdf.BinaryData, "application/pdf", "secure_document.pdf");
}

Technika ta pozwala na przechwycenie pełnego, wyrenderowanego wyniku stron, które znajdują się za zaporą logowania. Gdy docelowy adres URL należy do tej samej aplikacji, wszystkie względne ścieżki zasobów są rozpoznawane poprawnie, ponieważ renderer dziedziczy ten sam kontekst adresu bazowego. Można również skonfigurować niestandardowe nagłówki żądań HTTP do uwierzytelniania kluczem API lub innych schematów bezpieczeństwa opartych na nagłówkach.

Aby zapewnić większe bezpieczeństwo dokumentów po ich wygenerowaniu, warto rozważyć zastosowanie haseł i uprawnień do plików PDF lub podpisanie ich cyfrowo, aby zapobiec nieautoryzowanym modyfikacjom. IronPDF obsługuje również zgodność z formatem PDF/A do długoterminowej archiwizacji oraz format PDF/UA spełniający wymagania dotyczące dostępności, co może być istotne w branżach podlegających regulacjom.

A co z konwersją plików ASPX i dynamicznej zawartości JavaScript?

W przypadku konwersji starszych stron ASPX lub dokumentów, które wykorzystują JavaScript do wypełniania treści w czasie wykonywania, IronPDF niezawodnie obsługuje proces renderowania. Można skonfigurować opóźnienie renderowania, aby umożliwić zakończenie wykonywania kodu JavaScript przed przechwyceniem strony:

public IActionResult ConvertDynamicContent()
{
    var renderer = new ChromePdfRenderer();
    // Enable JavaScript so dynamic content renders correctly
    renderer.RenderingOptions.EnableJavaScript = true;
    // Wait 1 second after page load for JavaScript to complete
    renderer.RenderingOptions.WaitFor.RenderDelay(1000);
    // Generate your dynamic HTML string
    string dynamicHtml = GenerateDynamicHtml();
    var pdf = renderer.RenderHtmlAsPdf(dynamicHtml);
    return File(pdf.BinaryData, "application/pdf", "dynamic.pdf");
}

Jak wygląda treść dynamiczna po konwersji?

Podglad PDF pokazujacy dokument testowy wygenerowany przez IronPDF pokazujacy dynamiczna zawartosc z ustalona znacznik czasu przez JavaScript o godzinie 16:14:10

Częstym problemem podczas konwersji HTML do PDF są niepożądane podziały stron, które oddzielają nagłówki od treści lub przecinają wiersze tabel w połowie. IronPDF adresuje to przez konfigurowalna kontrole podzialu stron przy uzyciu standardowych zasad CSS page-break-before i page-break-inside obok WaitFor API IronPDF. Biblioteka obsługuje również asynchroniczne generowanie plików PDF w celu zwiększenia przepustowości w scenariuszach o dużym natężeniu ruchu.

W przypadku zaawansowanych aplikacji JavaScript — takich jak wykresy renderowane przez D3.js lub komponenty React — można wstrzyknąć i wykonać niestandardowy kod JavaScript przed wykonaniem migawki renderowania, zapewniając, że wykres lub komponent zostanie w pełni zamontowany przed wygenerowaniem pliku PDF.

Jak radzisz sobie ze stylami CSS i zaawansowanym renderowaniem HTML?

Silnik renderujący IronPDF obsługuje zaawansowane funkcje CSS i HTML5 dzięki kompletnemu interfejsowi API opcji renderowania. Podczas konwersji HTML do PDF biblioteka poprawnie interpretuje właściwości CSS — w tym złożone układy zbudowane przy użyciu Flexbox, CSS Grid i responsywnych zapytań o media. Wynikowy plik PDF zachowuje wierność wizualną strony źródłowej, w tym zewnętrzne arkusze stylów, style wbudowane oraz treści renderowane przez JavaScript, które zmieniają strukturę DOM przed przechwyceniem strony.

Proces konwersji obsługuje dokumenty wielostronicowe, usuwanie pustych stron oraz automatyczne dostosowywanie rozmiaru strony bez konieczności ręcznej konfiguracji. Obsługuje również specjalistyczne scenariusze, takie jak stosowanie różnych nagłówków lub stopek na określonych stronach lub płynne przetwarzanie treści rozciągających się na dziesiątki stron w raporcie.

Dodatkowe możliwości renderowania, o których warto wiedzieć:

Te możliwości sprawiają, że IronPDF jest praktycznym wyborem dla aplikacji obsługujących duże ilości dokumentów, w których jakość wyjściowa podstawowego konwertera nie spełnia wymagań produkcyjnych. Dla zespołów, które dopiero zaczynają przygodę z generowaniem plików PDF w środowisku .NET Core, dokumentacja Microsoft ASP.NET Core stanowi dobre źródło informacji na temat akcji kontrolerów i oprogramowania pośredniczącego, co jest przydatnym kontekstem podczas integracji dowolnej biblioteki PDF z aplikacją internetową.

Dlaczego jest to odpowiednia biblioteka PDF dla Twojego projektu .NET?

IronPDF for .NET to gotowa do użycia biblioteka .NET do konwersji HTML na PDF, oferująca niezawodną wydajność w porównaniu z alternatywami, takimi jak Aspose, iText i Syncfusion. W przeciwieństwie do podstawowych konwerterów PDF, zapewnia pełną obsługę nowoczesnych standardów internetowych — obsługując wszystko, od prostych ciągów HTML po złożone aplikacje internetowe z treścią renderowaną przez JavaScript i uwierzytelnianiem formularzy.

Biblioteka działa równie dobrze w aplikacjach Blazor, jak i projektach MAUI, i może być używana z językiem F#, a także z C#. W środowiskach Enterprise IronPDF obsługuje hosting IIS, Azure Functions oraz kontenery Docker.

IronPDF można wypróbować bezpłatnie podczas tworzenia oprogramowania. Pobierz IronPDF już dziś i zacznij konwertować treści HTML na profesjonalne dokumenty PDF. Zapoznaj się z pełną dokumentacją, przykładami kodu i Dokumentacją API, aby w pełni wykorzystać konwersję HTML do PDF w swoich aplikacjach ASP.NET Core.

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