Przejdź do treści stopki
KORZYSTANIE Z IRONPDF
Jak utworzyć PDF w C#

Generowanie plików PDF w C# (Przewodnik na 2026 rok)

Generowanie plików PDF z HTML i adresów URL to kluczowa funkcja dla programistów .NET w 2026 r., niezależnie od tego, czy konwertujesz strony internetowe na dokumenty, archiwizujesz treści online, czy przekształcasz raporty HTML na formaty przenośne. Dzięki odpowiedniej bibliotece .NET do obsługi plików PDF można przechwytywać strony internetowe i zawartość HTML jako profesjonalne dokumenty PDF za pomocą zaledwie kilku wierszy kodu, zachowując dokładny wygląd i strukturę oryginalnego źródła.

IronPDF to najprostszy i najbardziej wszechstronny generator plików PDF dla platformy .NET, służący do konwersji HTML na PDF — charakteryzuje się niezwykle łatwą obsługą, dzięki czemu generowanie plików PDF z treści internetowych zajmuje minuty, a nie godziny. Ten kompleksowy przewodnik pokaże Ci dokładnie, jak generować dokumenty PDF z HTML i adresów URL w języku C# przy użyciu IronPDF — potężnego generatora, który zapewnia idealną jakość obrazu i obsługuje każdą nowoczesną platformę .NET, w tym .NET 10 z C# 14 (obie wydane w listopadzie 2025 r.). Chociaż ten samouczek obejmuje wszystko, od prostych konwersji adresów URL po złożone, wielostronicowe raporty HTML, nie daj się zniechęcić — zacznij od początku i idź krok po kroku. Poznasz różne podejścia do generowania plików PDF, od przechwytywania pojedynczych stron internetowych po konwersję plików HTML w trybie wsadowym, plus dowiesz się, jak rozwiązywać typowe problemy i optymalizować wydajność w różnych scenariuszach konwersji HTML do PDF.

Czym jest IronPDF?

IronPDF to wiodąca biblioteka .NET do obsługi plików PDF, uznana przez programistów na całym świecie za narzędzie do konwersji HTML na PDF oraz kompleksowej obróbki plików PDF. Stworzony specjalnie dla programistów C#, IronPDF eliminuje złożoność tradycyjnie związaną z generowaniem plików PDF.

IronPDF wykorzystuje silnik .NET Chromium do konwersji stron HTML na dokumenty PDF. Dzięki funkcji HTML do PDF nie ma potrzeby korzystania ze skomplikowanych interfejsów API do pozycjonowania lub projektowania plików PDF. IronPDF obsługuje standardowe dokumenty internetowe: HTML, ASPX, JS, CSS oraz obrazy.

Umożliwia tworzenie dokumentów PDF przy użyciu HTML5, CSS3, JavaScript i obrazów. Możesz łatwo edytować, stemplować oraz dodawać nagłówki i stopki do plików PDF. Ponadto ułatwia to wydajne czytanie treści PDF za pomocą IronPDF oraz wyodrębnianie obrazów.

IronPDF zapewnia kompleksowe rozwiązanie wszystkich problemów związanych z plikami PDF. Korzystając z IronPDF, otrzymujesz wszystkie funkcje konwersji w jednej bibliotece, wraz z narzędziami do edycji plików PDF, bez konieczności korzystania z zewnętrznych zależności. IronPDF to kompletny pakiet i doskonałe narzędzie dla programistów oraz osób piszących w języku C#.

IronPDF pomaga nam generować pliki PDF z następujących źródeł:

  • Ciągi znaków HTML i szablony
  • ASPX WebForms
  • Widoki MVC
  • Dokumenty HTML
  • Dowolny adres URL

Funkcje IronPDF

IronPDF pomaga tworzyć dokumenty PDF z HTML 4 i 5, CSS oraz JavaScript, a także generuje pliki PDF z adresów URL. Ładuje również adresy URL z niestandardowymi danymi logowania do sieci, identyfikatorami użytkownika, serwerami proxy, plikami cookie, nagłówkami HTTP i zmiennymi formularzy, umożliwiając logowanie za pomocą formularzy logowania HTML. Możesz łatwo wyodrębniać obrazy i tekst z plików PDF, umieszczać nową zawartość HTML na istniejących stronach PDF oraz dodawać logiczne lub HTML-owe nagłówki i stopki. Może ładować i wyodrębniać istniejące pliki PDF, a także łączyć i dzielić zawartość dokumentów PDF. Posiada niestandardowy "adres URL bazowy", który umożliwia dostęp do plików zasobów w całej sieci, i akceptuje kodowanie HTML w dowolnym popularnym formacie (domyślnie UTF-8). Można zapisywać i wczytywać dane z plików, danych binarnych lub MemoryStreams, przekształcać dokumenty PDF w obiekt PrintDocument w celu drukowania bez użycia programu Adobe (przy minimalnym nakładzie kodu) oraz eksportować szczegółowe dokumenty dziennika dotyczące powodzenia operacji API i błędów debugowania.

Kompatybilność

IronPDF obsługuje języki .NET, takie jak C#, VB.NET i F#. Jest kompatybilny z .NET 10, .NET 9, .NET 8, .NET 6, .NET 5, .NET Core 2x i 3x, .NET Standard 2 oraz .NET Framework 4x. Działa w aplikacjach konsolowych, internetowych i desktopowych oraz jest obsługiwany przez systemy Microsoft Windows, Linux, macOS, Docker i Azure. IronPDF współpracuje z Microsoft Visual Studio 2022/2026, JetBrains ReSharper i Rider. Biblioteka jest w pełni kompatybilna z C# 14 (wydanym w listopadzie 2025 r.).

Kroki tworzenia dokumentów PDF

Najpierw utwórz nowy projekt w Visual Studio. W tym samouczku użyto szablonu aplikacji konsolowej, ale można użyć dowolnego szablonu zgodnie z własnymi wymaganiami.

Możesz również wykorzystać istniejący projekt, do którego chcesz dodać funkcje generowania plików PDF.

Utwórz projekt Visual Studio

Otwórz program Microsoft Visual Studio (zalecana wersja 2022 lub 2026). Kliknij "Utwórz nowy projekt". Wybierz szablon aplikacji konsolowej C#. Kliknij "Dalej".

Nadaj nazwę swojemu projektowi. W tym samouczku użyto nazwy "CSharpGeneratePDF", ale można wybrać dowolną nazwę. Kliknij "Dalej" i ustaw docelową platformę .NET Framework. Zalecamy .NET 10 (najnowsza wersja LTS) lub .NET 9. Kliknij "Utwórz", a zostanie utworzony nowy projekt.

Zainstaluj pakiet NuGet w Visual Studio

Zanim zaczniemy, zainstaluj bibliotekę IronPDF, korzystając z jednej z poniższych metod:

Konsola menedżera pakietów

Wpisz następujące polecenie w konsoli menedżera pakietów, aby pobrać i zainstalować pakiet:

Install-Package IronPdf

Obraz 1

Konsola menedżera pakietów pokazująca polecenie instalacji IronPDF

Rozwiązanie NuGet Package Manager

Można również zainstalować IronPDF za pomocą menedżera pakietów NuGet, wykonując następujące czynności:

Kliknij Narzędzia > Menedżer pakietów NuGet > Zarządzaj pakietami NuGet dla rozwiązania.

Obraz 2

Dostęp do menedżera pakietów NuGet z menu programu Visual Studio

Spowoduje to otwarcie menedżera pakietów NuGet. Kliknij "Przeglądaj" i wyszukaj IronPDF, jak pokazano poniżej.

Obraz 3

Wyszukiwanie IronPDF w menedżerze pakietów NuGet

Kliknij IronPDF, a następnie kliknij "Zainstaluj". Spowoduje to zainstalowanie IronPDF w Twoim projekcie. Teraz możesz korzystać z jego funkcji.

Pobierz bezpośrednio plik ZIP IronPDF

Alternatywnie można pobrać pakiet ZIP IronPDF w celu integracji.

Pamiętaj, aby dodać to oświadczenie na początku każdego pliku klasy .cs korzystającego z IronPDF:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Aby uzyskać więcej informacji na temat aktualizacji wersji i instalacji, sprawdź IronPDF na NuGet.

Dostępne są inne pakiety IronPDF NuGet przeznaczone do konkretnych wdrożeń na platformach Linux, Mac, Azure i AWS, które zostały opisane w zaawansowanym przewodniku instalacji IronPDF NuGet.

Biblioteka IronPDF została już zainstalowana, więc przejdźmy do następnego kroku.

Generowanie plików PDF z ciągu znaków HTML

IronPDF może dość łatwo generować pliki PDF z tekstu HTML. Poniższy przykład ilustruje tę możliwość. Użyj tej opcji, gdy chcesz przekonwertować kod HTML na plik PDF.

Dodaj następującą przestrzeń nazw:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Korzystając z poniższego przykładu kodu:

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

// Render HTML as PDF and save the result
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF</h1>")
        .SaveAs("GeneratePDF.pdf");
// Instantiate the PDF renderer
var Renderer = new ChromePdfRenderer();

// Render HTML as PDF and save the result
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF</h1>")
        .SaveAs("GeneratePDF.pdf");
' Instantiate the PDF renderer
Dim Renderer As New ChromePdfRenderer()

' Render HTML as PDF and save the result
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF</h1>") _
        .SaveAs("GeneratePDF.pdf")
$vbLabelText   $csharpLabel

W powyższym kodzie utwórz nowy ChromePdfRenderer, a następnie wywołaj RenderHtmlAsPdf i SaveAs, aby uzyskać wynik.

Wynik

Uruchom program. W folderze bin projektu zostanie wygenerowany dokument PDF (jeśli nie podano ścieżki).

Obraz 4

PDF wygenerowany z ciągu znaków HTML przedstawiającego sformatowany nagłówek

Wygeneruj swoje pierwsze pliki PDF

Po zainstalowaniu IronPDF można bez wysiłku tworzyć pliki PDF za pomocą zaledwie kilku wierszy kodu. Skopiuj poniższy kod, wklej go do programu Visual Studio i uruchom program.

// Create a new PDF renderer
var pdf = new ChromePdfRenderer();

// Render HTML to PDF
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");

// Save the document
doc.SaveAs("FirstPDFDocument.pdf");
// Create a new PDF renderer
var pdf = new ChromePdfRenderer();

// Render HTML to PDF
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");

// Save the document
doc.SaveAs("FirstPDFDocument.pdf");
' Create a new PDF renderer
Dim pdf As New ChromePdfRenderer()

' Render HTML to PDF
Dim doc As PdfDocument = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>")

' Save the document
doc.SaveAs("FirstPDFDocument.pdf")
$vbLabelText   $csharpLabel

Po uruchomieniu w folderze bin projektu pojawi się plik o nazwie "FirstPDFDocument.pdf". Kliknij dwukrotnie plik, aby otworzyć go w przeglądarce.

Obraz 9

Pierwszy dokument PDF zawierający wyrenderowany nagłówek

Tworzenie plików PDF w języku C# lub konwersja HTML do formatu PDF to tylko kilka linii kodu przy użyciu IronPDF.

Generowanie dokumentu PDF z adresu URL

Utworzenie pliku PDF w języku C# przy użyciu adresu URL jest równie proste, jak w poprzednim przykładzie, i wymaga zaledwie trzech wierszy kodu. Poniższy kod pokazuje, jak utworzyć plik PDF z adresu URL za pomocą IronPDF.

using IronPdf;

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

// Render URL as PDF
var PDF = Renderer.RenderUrlAsPdf("https://www.wikipedia.org");

// Save to file
PDF.SaveAs("wikipedia.pdf");
using IronPdf;

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

// Render URL as PDF
var PDF = Renderer.RenderUrlAsPdf("https://www.wikipedia.org");

// Save to file
PDF.SaveAs("wikipedia.pdf");
Imports IronPdf

' Instantiate renderer
Dim Renderer As New ChromePdfRenderer()

' Render URL as PDF
Dim PDF = Renderer.RenderUrlAsPdf("https://www.wikipedia.org")

' Save to file
PDF.SaveAs("wikipedia.pdf")
$vbLabelText   $csharpLabel

Wynik

Obraz 5

Strona główna Wikipedii zapisana jako dokument PDF z zachowaniem pełnego stylu

Generowanie plików PDF z plików HTML

IronPDF może również generować pliki PDF na podstawie istniejących plików HTML znajdujących się na dysku. Jest to przydatne, gdy masz gotowe szablony HTML lub pliki statyczne, które wymagają konwersji.

using IronPdf;

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

// Load and render HTML file
var PDF = Renderer.RenderHtmlFileAsPdf("HtmlPage.html");

// Save the PDF
PDF.SaveAs("FromHtmlFile.pdf");
using IronPdf;

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

// Load and render HTML file
var PDF = Renderer.RenderHtmlFileAsPdf("HtmlPage.html");

// Save the PDF
PDF.SaveAs("FromHtmlFile.pdf");
Imports IronPdf

' Instantiate renderer
Dim Renderer As New ChromePdfRenderer()

' Load and render HTML file
Dim PDF = Renderer.RenderHtmlFileAsPdf("HtmlPage.html")

' Save the PDF
PDF.SaveAs("FromHtmlFile.pdf")
$vbLabelText   $csharpLabel

Wynik

Obraz 6

Plik HTML przekonwertowany do formatu PDF z zachowaniem wszystkich stylów i układu

Generowanie dokumentu PDF z formularzy internetowych ASP.NET

IronPDF zapewnia płynną integrację z formularzami internetowymi ASP.NET, umożliwiając renderowanie dynamicznych stron internetowych jako dokumentów PDF.

using IronPdf.AspNetCore;

// Render current page as PDF
var currentPagePdf = AspNetCore.RenderThisPageAsPdf();

// Render specific page as PDF
var specificPagePdf = AspNetCore.RenderPageAsPdf("/Page.aspx");

// Render page with parameters
var pageWithParamsPdf = AspNetCore.RenderPageAsPdf("/Page.aspx?id=100");

// Save the result
currentPagePdf.SaveAs("MyASPXPage.pdf");
using IronPdf.AspNetCore;

// Render current page as PDF
var currentPagePdf = AspNetCore.RenderThisPageAsPdf();

// Render specific page as PDF
var specificPagePdf = AspNetCore.RenderPageAsPdf("/Page.aspx");

// Render page with parameters
var pageWithParamsPdf = AspNetCore.RenderPageAsPdf("/Page.aspx?id=100");

// Save the result
currentPagePdf.SaveAs("MyASPXPage.pdf");
Imports IronPdf.AspNetCore

' Render current page as PDF
Dim currentPagePdf = AspNetCore.RenderThisPageAsPdf()

' Render specific page as PDF
Dim specificPagePdf = AspNetCore.RenderPageAsPdf("/Page.aspx")

' Render page with parameters
Dim pageWithParamsPdf = AspNetCore.RenderPageAsPdf("/Page.aspx?id=100")

' Save the result
currentPagePdf.SaveAs("MyASPXPage.pdf")
$vbLabelText   $csharpLabel

Wynik

Obraz 7

Formularz ASP.NET WebForm wyrenderowany jako plik PDF z dynamiczną treścią

Generowanie pliku PDF z widoku ASP.NET MVC

IronPDF doskonale integruje się z aplikacjami ASP.NET MVC, umożliwiając renderowanie widoków MVC bezpośrednio jako dokumenty PDF.

using IronPdf.AspNetCore;

// Render MVC View as PDF
var viewPdf = AspNetCore.RenderViewAsPdf("/Home/Index");

// Render with model data
var modelData = new YourModelClass { Name = "John Doe", OrderId = 12345 };
var viewWithModelPdf = AspNetCore.RenderViewAsPdf("/Views/Invoice/Index", modelData);

// Save the PDF
viewPdf.SaveAs("MyMVCView.pdf");
using IronPdf.AspNetCore;

// Render MVC View as PDF
var viewPdf = AspNetCore.RenderViewAsPdf("/Home/Index");

// Render with model data
var modelData = new YourModelClass { Name = "John Doe", OrderId = 12345 };
var viewWithModelPdf = AspNetCore.RenderViewAsPdf("/Views/Invoice/Index", modelData);

// Save the PDF
viewPdf.SaveAs("MyMVCView.pdf");
Imports IronPdf.AspNetCore

' Render MVC View as PDF
Dim viewPdf = AspNetCore.RenderViewAsPdf("/Home/Index")

' Render with model data
Dim modelData = New YourModelClass With {.Name = "John Doe", .OrderId = 12345}
Dim viewWithModelPdf = AspNetCore.RenderViewAsPdf("/Views/Invoice/Index", modelData)

' Save the PDF
viewPdf.SaveAs("MyMVCView.pdf")
$vbLabelText   $csharpLabel

Wynik

Obraz 8

Widok MVC wyrenderowany jako plik PDF z danymi modelu i stylizacją

Dodawanie nagłówków i stopek do dokumentów PDF

Profesjonalne dokumenty PDF często wymagają nagłówków i stopek w celu umieszczenia elementów brandingowych, numerów stron, dat i metadanych. IronPDF oferuje dwie metody: nagłówki i stopki oparte na tekście oraz na HTML.

Dodaj proste nagłówki i stopki tekstowe

var ChromePdfRenderer = new ChromePdfRenderer();

// Configure page numbering
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1;

// Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}";
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12;

// Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial";
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10;
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";

// Generate PDF with headers and footers
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial</h1>")
                 .SaveAs("GeneratePDF.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();

// Configure page numbering
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1;

// Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}";
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12;

// Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial";
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10;
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";

// Generate PDF with headers and footers
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial</h1>")
                 .SaveAs("GeneratePDF.pdf");
Dim ChromePdfRenderer = New ChromePdfRenderer()

' Configure page numbering
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1

' Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = True
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}"
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial"
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12

' Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = True
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial"
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"

' Generate PDF with headers and footers
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial</h1>") _
                 .SaveAs("GeneratePDF.pdf")
$vbLabelText   $csharpLabel

Plik PDF z nagłówkiem i stopką

Obraz 10

Dokument PDF z tekstowymi nagłówkami i stopkami zawierającymi datę, godzinę i numery stron

Dodawanie nagłówków i stopek za pomocą HTML

W przypadku bardziej złożonych projektów należy stosować nagłówki i stopki oparte na HTML z pełną kontrolą stylizacji.

var ChromePdfRenderer = new ChromePdfRenderer();

// Configure HTML footer
ChromePdfRenderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    Height = 15,
    HtmlFragment = "<center><i>{page} of {total-pages}</i></center>",
    DrawDividerLine = true
};

// Configure HTML header
ChromePdfRenderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    Height = 20,
    HtmlFragment = "<div style='text-align: center; font-weight: bold;'>This is Header {date}</div>",
};

// Generate PDF
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.</h1>")
                 .SaveAs("GeneratePDF.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();

// Configure HTML footer
ChromePdfRenderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    Height = 15,
    HtmlFragment = "<center><i>{page} of {total-pages}</i></center>",
    DrawDividerLine = true
};

// Configure HTML header
ChromePdfRenderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    Height = 20,
    HtmlFragment = "<div style='text-align: center; font-weight: bold;'>This is Header {date}</div>",
};

// Generate PDF
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.</h1>")
                 .SaveAs("GeneratePDF.pdf");
Dim ChromePdfRenderer = New ChromePdfRenderer()

' Configure HTML footer
ChromePdfRenderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
    .Height = 15,
    .HtmlFragment = "<center><i>{page} of {total-pages}</i></center>",
    .DrawDividerLine = True
}

' Configure HTML header
ChromePdfRenderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
    .Height = 20,
    .HtmlFragment = "<div style='text-align: center; font-weight: bold;'>This is Header {date}</div>"
}

' Generate PDF
ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.</h1>").SaveAs("GeneratePDF.pdf")
$vbLabelText   $csharpLabel

Obraz 11

Plik PDF z nagłówkami i stopkami opartymi na HTML, zawierającymi niestandardowe style

Szyfrowanie dokumentów PDF za pomocą hasła

W przypadku dokumentów wrażliwych bezpieczeństwo ma ogromne znaczenie. IronPDF ułatwia szyfrowanie dokumentów PDF za pomocą ochrony hasłem.

var ChromePdfRenderer = new ChromePdfRenderer();

// Generate PDF document
var pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world</h1>");

// Set password to encrypt the document
pdfDocument.Password = "Password@1234";

// Save the secured PDF
pdfDocument.SaveAs("secured.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();

// Generate PDF document
var pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world</h1>");

// Set password to encrypt the document
pdfDocument.Password = "Password@1234";

// Save the secured PDF
pdfDocument.SaveAs("secured.pdf");
Dim ChromePdfRenderer = New ChromePdfRenderer()

' Generate PDF document
Dim pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world</h1>")

' Set password to encrypt the document
pdfDocument.Password = "Password@1234"

' Save the secured PDF
pdfDocument.SaveAs("secured.pdf")
$vbLabelText   $csharpLabel

Wynik w formacie PDF

Obraz 12

Monit o hasło podczas otwierania zaszyfrowanego dokumentu PDF

Łączenie i dzielenie dokumentów PDF

IronPDF oferuje zaawansowane funkcje łączenia wielu dokumentów PDF oraz dzielenia stron w istniejących dokumentach.

var ChromePdfRenderer = new ChromePdfRenderer();

// Load existing PDFs
var pdfDocuments = new List<PdfDocument>
{
    PdfDocument.FromFile("AccountPdf.pdf"),
    PdfDocument.FromFile("GeneratePDF.pdf"),
    PdfDocument.FromFile("wikipedia.pdf")
};

// Merge PDFs into a single document
var mergedPdfDocument = PdfDocument.Merge(pdfDocuments);
mergedPdfDocument.SaveAs("merged.pdf");

// Add a cover page
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"));

// Remove the last page
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1);
mergedPdfDocument.SaveAs("merged.pdf");

// Extract specific pages
mergedPdfDocument.CopyPages(1, 2).SaveAs("excerpt.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();

// Load existing PDFs
var pdfDocuments = new List<PdfDocument>
{
    PdfDocument.FromFile("AccountPdf.pdf"),
    PdfDocument.FromFile("GeneratePDF.pdf"),
    PdfDocument.FromFile("wikipedia.pdf")
};

// Merge PDFs into a single document
var mergedPdfDocument = PdfDocument.Merge(pdfDocuments);
mergedPdfDocument.SaveAs("merged.pdf");

// Add a cover page
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"));

// Remove the last page
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1);
mergedPdfDocument.SaveAs("merged.pdf");

// Extract specific pages
mergedPdfDocument.CopyPages(1, 2).SaveAs("excerpt.pdf");
Dim ChromePdfRenderer = New ChromePdfRenderer()

' Load existing PDFs
Dim pdfDocuments = New List(Of PdfDocument) From {
    PdfDocument.FromFile("AccountPdf.pdf"),
    PdfDocument.FromFile("GeneratePDF.pdf"),
    PdfDocument.FromFile("wikipedia.pdf")
}

' Merge PDFs into a single document
Dim mergedPdfDocument = PdfDocument.Merge(pdfDocuments)
mergedPdfDocument.SaveAs("merged.pdf")

' Add a cover page
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"))

' Remove the last page
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1)
mergedPdfDocument.SaveAs("merged.pdf")

' Extract specific pages
mergedPdfDocument.CopyPages(1, 2).SaveAs("excerpt.pdf")
$vbLabelText   $csharpLabel

Dodaj pliki PDF do projektu jako "Treść", aby uzyskać do nich dostęp według nazwy pliku.

Obraz 13

Połączony dokument PDF zawierający wiele plików źródłowych

Wyodrębnianie obrazów z dokumentów PDF

Ta funkcja wymaga pakietu NuGet System.Drawing.Common. Użyj ExtractAllText, aby pobrać tekst, oraz ExtractAllImages, aby pobrać obrazy.

var ChromePdfRenderer = new ChromePdfRenderer();

// Load existing PDF
var pdfDocument = PdfDocument.FromFile("wikipedia.pdf");

// Get all text
var allText = pdfDocument.ExtractAllText();

// Get all Images
var allImages = pdfDocument.ExtractAllImages();

// Extract images and text by page
for (var index = 0; index < pdfDocument.PageCount; index++)
{
    var pageNumber = index + 1;
    var pageText = pdfDocument.ExtractTextFromPage(index);
    var pageImages = pdfDocument.ExtractImagesFromPage(index);
}
var ChromePdfRenderer = new ChromePdfRenderer();

// Load existing PDF
var pdfDocument = PdfDocument.FromFile("wikipedia.pdf");

// Get all text
var allText = pdfDocument.ExtractAllText();

// Get all Images
var allImages = pdfDocument.ExtractAllImages();

// Extract images and text by page
for (var index = 0; index < pdfDocument.PageCount; index++)
{
    var pageNumber = index + 1;
    var pageText = pdfDocument.ExtractTextFromPage(index);
    var pageImages = pdfDocument.ExtractImagesFromPage(index);
}
Dim ChromePdfRenderer = New ChromePdfRenderer()

' Load existing PDF
Dim pdfDocument = PdfDocument.FromFile("wikipedia.pdf")

' Get all text
Dim allText = pdfDocument.ExtractAllText()

' Get all Images
Dim allImages = pdfDocument.ExtractAllImages()

' Extract images and text by page
For index = 0 To pdfDocument.PageCount - 1
    Dim pageNumber = index + 1
    Dim pageText = pdfDocument.ExtractTextFromPage(index)
    Dim pageImages = pdfDocument.ExtractImagesFromPage(index)
Next
$vbLabelText   $csharpLabel

Aby zapisać obrazy jako pliki bitmapowe, należy dodać System.Drawing.

Włącz JavaScript

Nowoczesne strony internetowe wykorzystują JavaScript do wyświetlania treści dynamicznych. Silnik Chromium firmy IronPDF w pełni obsługuje wykonywanie kodu JavaScript.

var ChromePdfRenderer = new ChromePdfRenderer();

// Enable JavaScript rendering
ChromePdfRenderer.RenderingOptions = new ChromePdfRenderOptions()
{
    EnableJavaScript = true,
    RenderDelay = 100  // Wait for JavaScript to execute
};
var ChromePdfRenderer = new ChromePdfRenderer();

// Enable JavaScript rendering
ChromePdfRenderer.RenderingOptions = new ChromePdfRenderOptions()
{
    EnableJavaScript = true,
    RenderDelay = 100  // Wait for JavaScript to execute
};
Dim ChromePdfRenderer = New ChromePdfRenderer()

' Enable JavaScript rendering
ChromePdfRenderer.RenderingOptions = New ChromePdfRenderOptions() With {
    .EnableJavaScript = True,
    .RenderDelay = 100 ' Wait for JavaScript to execute
}
$vbLabelText   $csharpLabel

Zwiększ RenderDelay dla stron z intensywnym przetwarzaniem JavaScript lub wywołaniami AJAX (500–1000 ms dla złożonych aplikacji SPA).

OCR plików PDF i ekstrakcja tekstu

W wielu przypadkach można bezpośrednio wyodrębnić tekst osadzony w dokumentach PDF:

// Load PDF
PdfDocument PDF = PdfDocument.FromFile("GeneratePDF.pdf");

// Extract all text 
string Text = PDF.ExtractAllText();
// Load PDF
PdfDocument PDF = PdfDocument.FromFile("GeneratePDF.pdf");

// Extract all text 
string Text = PDF.ExtractAllText();
' Load PDF
Dim PDF As PdfDocument = PdfDocument.FromFile("GeneratePDF.pdf")

' Extract all text 
Dim Text As String = PDF.ExtractAllText()
$vbLabelText   $csharpLabel

Jeśli bezpośrednie wyodrębnianie nie działa, prawdopodobnie tekst jest osadzony w obrazie. Użyj biblioteki IronOCR do skanowania dokumentów w celu rozpoznania tekstu wizualnego:

using IronOcr;

var ocr = new IronTesseract();
var result = ocr.Read("scanned-document.pdf");
string recognizedText = result.Text;
using IronOcr;

var ocr = new IronTesseract();
var result = ocr.Read("scanned-document.pdf");
string recognizedText = result.Text;
Imports IronOcr

Dim ocr As New IronTesseract()
Dim result = ocr.Read("scanned-document.pdf")
Dim recognizedText As String = result.Text
$vbLabelText   $csharpLabel

Podsumowanie

Możesz generować dokumenty PDF, edytować je i formatować za pomocą zaledwie kilku linii kodu. IronPDF zajmie się za Ciebie tą złożoną sprawą. Dostępna jest bezpłatna wersja do celów programistycznych oraz bezpłatna wersja próbna przed zakupem. Chociaż istnieją inne biblioteki PDF, wiele z nich działa wolno lub wymaga skomplikowanego kodowania niskopoziomowego.

Biblioteka IronPDF for .NET jest teraz dostępna w pakiecie Iron Suite for .NET. Pakiet Iron Suite zawiera pięć potężnych bibliotek: IronPDF, IronXL, IronOCR, IronBarcode i IronQR. Biblioteki te płynnie współpracują ze sobą, umożliwiając kompleksowe przetwarzanie dokumentów. Kupując kompletny pakiet Iron Suite, otrzymujesz wszystkie pięć produktów w cenie zaledwie dwóch.

IronPDF jest w pełni kompatybilny z .NET 10 i C# 14 (wydany w listopadzie 2025 r.), a także z .NET 9, .NET 8, .NET 6 i wszystkimi nowoczesnymi platformami .NET.

Plik projektu można pobrać z tego projektu samouczka IronPDF C# PDF Generation Tutorial Project.

Często Zadawane Pytania

Jak wygenerować plik PDF z ciągu znaków HTML w języku C#?

Można wygenerować plik PDF z ciągu znaków HTML za pomocą metody RenderHtmlAsPdf w klasie ChromePdfRenderer biblioteki IronPDF. Metoda ta konwertuje zawartość HTML do formatu PDF, który następnie można zapisać za pomocą metody SaveAs.

Czy mogę tworzyć dokumenty PDF na podstawie adresów URL stron internetowych?

Tak, za pomocą IronPDF można tworzyć pliki PDF na podstawie adresów URL stron internetowych. Aby przekonwertować zawartość strony internetowej na dokument PDF, należy skorzystać z metody RenderUrlAsPdf klasy ChromePdfRenderer.

Jak dodać nagłówki i stopki do pliku PDF w języku C#?

Aby dodać nagłówki i stopki do PDF w C#, użyj ChromePdfRenderer z IronPDF, ustawiając właściwości TextHeader i TextFooter w RenderingOptions. Możesz uwzględnić dynamiczne elementy, takie jak numery stron i daty.

Czy można zaszyfrować dokumenty PDF w C#?

Tak, możesz zaszyfrować dokumenty PDF w C# używając IronPDF, ustawiając właściwość Password obiektu PdfDocument na pożądane hasło.

Jak mogę łączyć lub dzielić pliki PDF używając C#?

Z IronPDF możesz połączyć wiele PDF-ów w jeden dokument, używając metody Merge. Aby podzielić dokumenty, możesz użyć metody CopyPages do wyodrębnienia konkretnych stron.

Jakie są wymagania systemowe dotyczące korzystania z IronPDF?

IronPDF obsługuje języki .NET, takie jak C#, VB.NET i F#. Jest kompatybilny z .NET 6, 5, Core 2.x i 3.x, Standard 2 oraz Framework 4.x. Działa na Windows, Linux, macOS, Docker oraz Azure OS.

Czy mogę wyodrębnić obrazy z plików PDF w C#?

Tak, możesz wyodrębnić obrazy z plików PDF używając metody ExtractAllImages z IronPDF. Upewnij się, że pakiet NuGet System.Drawing.Common jest dołączony do obsługi obrazów.

Jak zainstalować IronPDF w moim projekcie C#?

Zainstaluj IronPDF w swoim projekcie za pomocą Menedżera Pakietów NuGet w Visual Studio, szukając IronPDF lub używając konsoli Menedżera Pakietów z poleceniem Install-Package IronPdf.

Jakie dodatkowe funkcje oferuje IronPDF?

IronPDF oferuje funkcje takie jak tworzenie PDF-ów z wielu źródeł, dodawanie nagłówków i stopek, szyfrowanie dokumentów, wyodrębnianie tekstu i obrazów oraz konwersję treści HTML. Obsługuje również wykonywanie JavaScriptu oraz możliwości OCR dla wyodrębniania tekstu z PDF-ów osadzonych w obrazach.

Czy IronPDF jest kompatybilny z .NET 10 i jakie to przynosi korzyści?

Tak, IronPDF jest w pełni kompatybilny z .NET 10. Działa bezpośrednio w projektach .NET 10 tak samo jak w wcześniejszych wersjach .NET, działając na Windows, Linux, kontenerach i macOS. Korzyści obejmują poprawioną wydajność uruchamiania, brak konieczności konfigurowania obejść oraz dostęp do nowych funkcji języka C# oraz API przyjaznych asynchronicznie.

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