Jak przeksztalcic ciag HTML w PDF w C# | IronPDF

How to Convert HTML String to PDF in C

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPDF konwertuje ciągi HTML na dokumenty PDF w C# przy użyciu silnika renderowania Chrome, wspierając cały HTML5, CSS3 i JavaScript w pojedynczej linii kodu dla podstawowej konwersji. Biblioteka oferuje potężne funkcje do tworzenia PDF-ów, zachowując doskonałą wierność renderowania.

IronPDF pozwala deweloperom na łatwe tworzenie dokumentów PDF w C#, F# i VB.NET dla .NET Core i .NET Framework. IronPDF wspiera renderowanie dowolnego ciągu HTML do PDF, a proces renderowania wykorzystuje w pełni funkcjonalną wersję silnika Google Chromium. To zapewnia, że zawartość HTML wygląda dokładnie tak samo, jak w nowoczesnej przeglądarce internetowej, co jest idealne do generowania raportów, faktur i dokumentów z dynamicznej zawartości HTML.

Szybki start: Przekonwertuj ciąg HTML na PDF w kilka sekund

Przekształć ciągi HTML na pliki PDF za pomocą IronPDF. Ten przewodnik pokazuje, jak przekonwertować ciąg HTML na dokument PDF w C# przy minimalnym kodzie. Idealne dla deweloperów, którzy muszą zintegrować możliwości renderowania PDF w swoich projektach.

  1. Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf
  2. Skopiuj i uruchom ten fragment kodu.

    IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf("<p>Hello World</p>").SaveAs("string-to-pdf.pdf");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronPDF w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer


Jak przekonwertować prosty ciąg HTML na PDF?

Oto przykład IronPDF renderującego ciąg HTML do PDF za pomocą metody RenderHtmlAsPdf. Parametr to ciąg HTML do renderowania jako PDF. Ta metoda jest częścią klasy ChromePdfRenderer, która zapewnia rozbudowaną kontrolę nad opcjami renderowania dla generowania potrzebnych PDF.

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");
Imports IronPdf

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()

' Create a PDF from a HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")

' Export to a file or Stream
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

Metoda RenderHtmlAsPdf zwraca obiekt PdfDocument, który przechowuje informacje o PDF i dostarcza metody manipulacji PDF, w tym łączenie PDF, dodawanie znaków wodnych i ustawianie opcji bezpieczeństwa.

PoradyW ASP.NET Core, Blazor lub usługach w tle, preferuj asynchroniczny wariant RenderHtmlAsPdfAsync, aby uniknąć blokowania wątków.
Zwracany przez PdfDocument implementuje IDisposable, więc umieść go w bloku using dla scenariuszy o wysokiej przepustowości. ChromePdfRenderer jest bezpieczny dla wątków i może być zainicjowany raz i ponownie wykorzystywany w zgłoszeniach dla lepszej wydajności. )}]

Gdy ciąg HTML jest uzyskiwany ze źródła zewnętrznego i trzeba wyłączyć dostęp do lokalnego dysku lub żądania cross-origin, ustaw IronPdf.Installation.EnableWebSecurity na true przed renderowaniem. To jest globalne ustawienie statyczne, a nie właściwość instancji na rendererze.

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf-3.cs
// Enable web security before rendering untrusted HTML
IronPdf.Installation.EnableWebSecurity = true;
' Enable web security before rendering untrusted HTML
IronPdf.Installation.EnableWebSecurity = True
$vbLabelText   $csharpLabel

Dla skomplikowanej zawartości HTML zawierającej stylizację CSS, wzbogacaj swoje ciągi HTML stylem w linii lub odnośnikiem do zewnętrznych arkuszy stylów przy użyciu funkcji Base URLs & Asset Encoding:

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf-4.cs
// Example with inline CSS
var styledHtml = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; margin: 40px; }
        h1 { color: #333; border-bottom: 2px solid #0066cc; }
        p { line-height: 1.6; }
    </style>
</head>
<body>
    <h1>Professional Report</h1>
    <p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>";

using var styledPdf = renderer.RenderHtmlAsPdf(styledHtml);
styledPdf.SaveAs("styled-output.pdf");
Dim styledHtml As String = "
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; margin: 40px; }
        h1 { color: #333; border-bottom: 2px solid #0066cc; }
        p { line-height: 1.6; }
    </style>
</head>
<body>
    <h1>Professional Report</h1>
    <p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>"

Using styledPdf = renderer.RenderHtmlAsPdf(styledHtml)
    styledPdf.SaveAs("styled-output.pdf")
End Using
$vbLabelText   $csharpLabel

Jak wygląda wygenerowany plik PDF?

To jest plik wygenerowany przez kod:

Generowany PDF zachowuje dokładne formatowanie i stylizację z twojego HTML, co czyni go idealnym do generowania raportów PDF lub konwersji zawartości webowej na dokumenty gotowe do druku.

Icon Quote related to Jak wygląda wygenerowany plik PDF?

Moją ulubioną biblioteką tego typu jest IronPDF. Umożliwia ona szybkie i efektywne manipulowanie plikami PDF. Posiada także wiele cennych funkcji, takich jak eksport do formatu PDF/A i cyfrowe podpisywanie dokumentów PDF.

Milan Jovanovic related to Jak wygląda wygenerowany plik PDF?

Milan Jovanovic

Microsoft MVP

Zobacz studium przypadku
Icon Quote related to Jak wygląda wygenerowany plik PDF?

IronOCR pozwala nam oszczędzić 40 000 USD rocznie na ręcznym przetwarzaniu, jednocześnie zwiększając produktywność i uwalniając zasoby do zadań o wysokim wpływie. Gorąco polecam.

Brent Matzelle related to Jak wygląda wygenerowany plik PDF?

Brent Matzelle

Dyrektor technologiczny, OPYN

Zobacz studium przypadku
Icon Quote related to Jak wygląda wygenerowany plik PDF?

IronSuite odgrywa kluczową rolę w naszej działalności. Są to narzędzia zwiększające wydajność w całej firmie, w tym tworzenie planów pięter i poprawa zarządzania zapasami.

David Jones related to Jak wygląda wygenerowany plik PDF?

David Jones

Główny inżynier oprogramowania, Agorus Build

Zobacz studium przypadku

Jak mogę uwzględnić zewnętrzne zasoby przy konwersji HTML do PDF?

Ten przykład pokazuje, jak IronPDF ładuje zewnętrzne zasoby obrazu z opcjonalnego BasePath. Ustawienie właściwości BaseUrlOrPath podaje względną ścieżkę pliku lub kontekst URL dla hiperlinków, obrazów, CSS i plików JavaScript. Jest to niezbędne przy pracy z obrazami w PDF lub gdy potrzebujesz odwołać się do zewnętrznych zasobów.

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf-2.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Imports IronPdf

' Instantiate Renderer
Private renderer = New ChromePdfRenderer()

' Advanced Example with HTML Assets
' Load external html assets: Images, CSS and JavaScript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Private myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
$vbLabelText   $csharpLabel

Dla zaawansowanych scenariuszy obejmujących skomplikowane układy lub dynamiczną zawartość, wykorzystaj wsparcie IronPDF dla renderowania JavaScript:

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf-6.cs
// Example with JavaScript-generated content
var jsHtml = @"
<html>
<head>
    <script>
        window.onload = function() {
            document.getElementById('dynamic').innerHTML = 
                'Generated on: ' + new Date().toLocaleString();
        };
    </script>
</head>
<body>
    <h1>Dynamic Content Example</h1>
    <div id='dynamic'></div>
</body>
</html>";

// Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay(500); // milliseconds
using var dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, @"C:\site\");
dynamicPdf.SaveAs("dynamic-content.pdf");
Imports System.IO

' Example with JavaScript-generated content
Dim jsHtml As String = "
<html>
<head>
    <script>
        window.onload = function() {
            document.getElementById('dynamic').innerHTML = 
                'Generated on: ' + new Date().toLocaleString();
        };
    </script>
</head>
<body>
    <h1>Dynamic Content Example</h1>
    <div id='dynamic'></div>
</body>
</html>"

' Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay(500) ' milliseconds
Using dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, "C:\site\")
    dynamicPdf.SaveAs("dynamic-content.pdf")
End Using
$vbLabelText   $csharpLabel

Pracując z zewnętrznymi zasobami, możesz potrzebować obsługiwać uwierzytelnianie lub specjalne nagłówki. IronPDF wspiera to poprzez funkcjonalność HTTP Request Header, pozwalając na dołączenie tokenów autoryzacji lub niestandardowych nagłówków przy pobieraniu zasobów.

Dlaczego ustawienie BasePath jest ważne dla zasobów zewnętrznych?

To jest plik wygenerowany przez kod:

Prawidłowe ustawienie BasePath zapewnia właściwe rozwiązanie wszystkich względnych odwołań w HTML. Bez tego IronPDF nie jest w stanie zlokalizować zewnętrznych zasobów takich jak obrazy, arkusze stylów czy skrypty. Jest to szczególnie ważne gdy:

  1. Konwertowanie HTML, który odwołuje się do zasobów lokalnego systemu plików
  2. Praca z systemami zarządzania treścią używającymi względnych URL
  3. Migracja istniejącej zawartości webowej do formatu PDF
  4. Tworzenie szablonów korzystających ze wspólnych zasobów

Dla zasobów webowych, użyj pełnego URL jako ścieżki bazowej:

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf-7.cs
// Using a web URL as base path
var webBasedPdf = renderer.RenderHtmlAsPdf(
    "<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>", 
    "https://mywebsite.com"
);
Dim webBasedPdf = renderer.RenderHtmlAsPdf("<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>", "https://mywebsite.com")
$vbLabelText   $csharpLabel

Dla większej kontrola nad procesem generacji PDF, zapoznaj się z obszerną dokumentacją IronPDF na temat niestandardowych marginesów, orientacji strony oraz kompresji PDF, aby zoptymalizować swoje pliki wyjściowe dla różnych przypadków użycia.

Często Zadawane Pytania

Jak przekonwertowac prosty ciag HTML na PDF w C#?

Mozesz przekonwertowac ciag HTML na PDF za pomoca klasy ChromePdfRenderer IronPDF z metoda RenderHtmlAsPdf. Po prostu instancjuj renderer, podaj swoj ciag HTML do metody i zapisz wynikowy obiekt PdfDocument. IronPDF uzywa silnika renderowania opartego na Chrome, aby zapewnic idealna zgodnosc.

Jaki silnik renderujący jest używany do konwersji HTML na PDF?

IronPDF uzywa w pelni funkcjonalnej wersji silnika Google Chromium do renderowania HTML na PDF. To zapewnia, ze twoje tresci HTML, w tym HTML5, CSS3 i JavaScript, pojawia sie dokladnie tak, jak w nowoczesnej przegladarce internetowej.

Czy moge przekonwertowac HTML z CSS do PDF?

Tak, IronPDF wspiera konwersje HTML z CSS do PDF. Mozesz uzywac stylow inline bezposrednio w swoim ciagu HTML lub odnosc sie do zewnetrznych arkuszy stylow za pomoca funkcji Bazowe URL i Kodowanie Zasobow, aby zapewnic wlasciwe renderowanie stylizowanej tresci.

Jaki jest najszybszy sposob konwersji HTML na PDF?

Najszybszy sposob to uzycie statycznej metody IronPDF: IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf('Twoj HTML').SaveAs('output.pdf'). Ta pojedyncza linia kodu konwertuje twoj ciag HTML i zapisuje go jako plik PDF.

Jak zarzadzac zewnetrznymi zasobami przy konwersji ciagow HTML?

IronPDF pozwala ci skonfigurowac BasePath dla zewnetrznych zasobow w twoim PDF. To zapewnia, ze obrazy, arkusze stylow i inne zasoby, do ktorych odnosi sie twoj HTML, sa poprawnie ładowane w trakcie procesu konwersji.

Czy moge dostosowac wyjscie PDF przy konwersji z HTML?

Tak, IronPDF dostarcza rozbudowane opcje RenderingOptions do fine-tuning twojego wyjscia PDF. Mozesz kontrolowac rozmiar strony, marginesy, naglowki, stopki i wiele innych aspektow generowanego PDF za pomoca klasy ChromePdfRenderer.

Co moge zrobic z wygenerowanym PDF po konwersji?

Obiekt PdfDocument IronPDF dostarcza wiele metod do manipulacji PDF, w tym laczenie PDF-ow, dodawanie znakow wodnych, ustalanie opcji bezpieczenstwa i wiecej. Przekonwertowany PDF moze byc zapisany na dysku, przeslany strumieniowo lub dalej przetwarzany w zaleznosci od potrzeb.

Jak zarzadzac bezpieczenstwem przy konwersji HTML z zewnetrznych zrodel?

Podczas konwersji HTML z zewnetrznych zrodel, IronPDF pozwala ci ustawic wlasciwosc EnableWebSecurity na true w ChromePdfRenderer. To wylacza dostep do lokalnego dysku i zadania cross-origin dla zwiekszenia bezpieczenstwa.

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
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 19,936,792 | Wersja: 2026.7 właśnie wydany
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronPdf
Uruchom przykład i zobacz, jak Twój kod HTML zamienia się w plik PDF.