Jak odczytywać pliki PDF w języku C#
Konwersja plikow PDF na obrazy w C# to dosc powszechne zadanie. Mozesz potrzebowac miniatur, podgladow w sieci lub nawet kopii archiwalnych. Z IronPDF, ten proces staje sie prostym zadaniem. Dzieki swojej metodzie RasterizeToImageFiles, umozliwia konwersje plikow PDF do plikow obrazow takich jak obrazy PNG, obrazy JPEG, obrazy TIFF lub BMP w zaledwie kilka linii kodu.
W tym artykule przejdziemy przez wszystko, co trzeba wiedziec, aby konwertowac pliki PDF na PNG, JPG, TIFF lub BMP. Zobaczysz, jak obslugiwac pelne dokumenty, okreslone zakresy stron, a nawet strony internetowe renderowane jako PDF. Do konca bedziesz miec solidne doświadczenie w generowaniu wysokiej jakości obrazow z PDF w swoich projektach .NET.
Why Convert PDF Documents to Images in C#?
Konwertowanie stron PDF na obrazy ma praktyczne zastosowania w nowoczesnych aplikacjach .NET Framework czy .NET. Systemy zarzadzania dokumentami potrzebuja miniatur do szybkiej nawigacji wizualnej, podczas gdy aplikacje webowe korzystaja z formatow obrazow dla lepszej zgodnosci z przegladarkami i szybszych czasow ladowania.
Dodatkowo konwersja PDF na obrazy sprawia, ze twoje PDF wygladaja poprawnie na kazdej platformie z ograniczonym wsparciem biblioteki PDF. Niezaleznie od tego, czy pracujesz z wieloma stronami czy pojedyncza strona, IronPDF dokonuje tego procesu w zaledwie kilku linijkach kodu bez obaw o bledy czy skomplikowane renderowanie.
Pierwsze kroki z IronPDF
Najpierw stworz nowa aplikacje konsolowa C# w Visual Studio i zainstaluj IronPDF za pomoca Menedzera pakietow NuGet:
Install-Package IronPdf

IronPDF obsługuje .NET Framework, .NET Core i .NET 5+, zapewniając kompatybilność procesu konwersji plików PDF na obrazy z każdą używaną wersją .NET. Po zainstalowaniu możesz rozpocząć konwersję stron PDF na pliki graficzne w swoim programie.
Jak przekonwertować strony PDF na pliki graficzne?
Najprostszym sposobem konwersji pliku PDF na obrazy jest załadowanie dokumentu i wywołanie metody RasterizeToImageFiles:
using IronPdf;
class Program
{
static void Main(string[] args)
{
// Load an existing PDF document
var pdfDocument = PdfDocument.FromFile("report.pdf");
// Convert all pages to PNG images
pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.png");
}
}
using IronPdf;
class Program
{
static void Main(string[] args)
{
// Load an existing PDF document
var pdfDocument = PdfDocument.FromFile("report.pdf");
// Convert all pages to PNG images
pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.png");
}
}
Imports IronPdf
Class Program
Shared Sub Main(args As String())
' Load an existing PDF document
Dim pdfDocument = PdfDocument.FromFile("report.pdf")
' Convert all pages to PNG images
pdfDocument.RasterizeToImageFiles("C:\images\page_*.png")
End Sub
End Class
Ten kod konwertuje każdą stronę pliku PDF na oddzielny plik PNG. Gwiazdka (*) w szablonie nazwy pliku jest automatycznie zastępowana numerem strony. Aby zapewnić prawidłowe zarządzanie zasobami, należy umieścić obiekt PdfDocument w instrukcji using, aby zagwarantować jego usunięcie.
Po uruchomieniu kodu w katalogu wyjściowym widzimy, że mimo iż nasz plik PDF zawiera wiele stron, nasz kod nie określa, które strony mają zostać przekonwertowane, więc każda z nich została zapisana jako osobny plik graficzny:

Aby przekonwertować konkretne strony, należy określić zakres stron:
// Specify the page indexes for conversion
int[] pageIndexes = new[] { 0, 1, 2 };
// Convert pages 1-3 to JPG images
pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.jpg", pageIndexes);
// Specify the page indexes for conversion
int[] pageIndexes = new[] { 0, 1, 2 };
// Convert pages 1-3 to JPG images
pdfDocument.RasterizeToImageFiles(@"C:\images\page_*.jpg", pageIndexes);
' Specify the page indexes for conversion
Dim pageIndexes As Integer() = {0, 1, 2}
' Convert pages 1-3 to JPG images
pdfDocument.RasterizeToImageFiles("C:\images\page_*.jpg", pageIndexes)
Należy pamiętać, że indeksowanie stron zaczyna się od 0, więc pierwsza strona ma pageIndex = 0.

Jak kontrolować jakość obrazu?
Jakość obrazu ma bezpośredni wpływ na rozmiar pliku i przejrzystość wizualną. IronPDF pozwala kontrolować to poprzez ustawienia DPI (punktów na cal):
// High-quality conversion at 300 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\high_quality_*.png", DPI: 300);
// Web-optimized at 150 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\web_*.jpg", DPI: 150);
// High-quality conversion at 300 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\high_quality_*.png", DPI: 300);
// Web-optimized at 150 DPI
pdfDocument.RasterizeToImageFiles(@"C:\images\web_*.jpg", DPI: 150);
' High-quality conversion at 300 DPI
pdfDocument.RasterizeToImageFiles("C:\images\high_quality_*.png", DPI:=300)
' Web-optimized at 150 DPI
pdfDocument.RasterizeToImageFiles("C:\images\web_*.jpg", DPI:=150)
Domyślna rozdzielczość 96 DPI wystarcza do podstawowego podglądu, ale należy ją zwiększyć do 150–300 DPI w przypadku obrazów o jakości PRINT. Wyższe wartości DPI zapewniają ostrzejszy obraz, ale powodują zwiększenie rozmiaru plików.

Jakie formaty obrazów są obsługiwane?
IronPDF obsługuje wiele formatów obrazów za pomocą parametru ImageType:
// Convert to different formats
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.png", IronPdf.Imaging.ImageType.Png);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.jpg", IronPdf.Imaging.ImageType.Jpeg);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.tiff", IronPdf.Imaging.ImageType.Tiff);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.bmp", IronPdf.Imaging.ImageType.Bitmap);
// Convert to different formats
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.png", IronPdf.Imaging.ImageType.Png);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.jpg", IronPdf.Imaging.ImageType.Jpeg);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.tiff", IronPdf.Imaging.ImageType.Tiff);
pdfDocument.RasterizeToImageFiles(@"C:\images\output_*.bmp", IronPdf.Imaging.ImageType.Bitmap);
' Convert to different formats
pdfDocument.RasterizeToImageFiles("C:\images\output_*.png", IronPdf.Imaging.ImageType.Png)
pdfDocument.RasterizeToImageFiles("C:\images\output_*.jpg", IronPdf.Imaging.ImageType.Jpeg)
pdfDocument.RasterizeToImageFiles("C:\images\output_*.tiff", IronPdf.Imaging.ImageType.Tiff)
pdfDocument.RasterizeToImageFiles("C:\images\output_*.bmp", IronPdf.Imaging.ImageType.Bitmap)
Wybierz format PNG dla obrazów wymagających przezroczystości, JPEG dla zdjęć i treści internetowych, TIFF do celów archiwizacyjnych oraz BMP, gdy potrzebne są obrazy nieskompresowane. Dokumentacja API IronPDF zawiera szczegółowe informacje na temat wszystkich obsługiwanych opcji ImageType.
Jak radzić sobie w zaawansowanych sytuacjach?
IronPDF doskonale radzi sobie ze złożonymi scenariuszami konwersji plików PDF na obrazy. Jedną ze szczególnie przydatnych funkcji jest konwersja stron internetowych bezpośrednio na obrazy poprzez renderowanie do formatu PDF. Aby uzyskac wiecej opcji konwersji HTML, przeszukaj przewodnik Konwersja HTML na PDF:
// Convert a webpage to images
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument webPdf = renderer.RenderUrlAsPdf("https://apple.com");
webPdf.RasterizeToImageFiles(@"C:\images\webpage_*.png", DPI: 200);
// Convert a webpage to images
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument webPdf = renderer.RenderUrlAsPdf("https://apple.com");
webPdf.RasterizeToImageFiles(@"C:\images\webpage_*.png", DPI: 200);
Imports IronPdf
' Convert a webpage to images
Dim renderer As New ChromePdfRenderer()
Dim webPdf As PdfDocument = renderer.RenderUrlAsPdf("https://apple.com")
webPdf.RasterizeToImageFiles("C:\images\webpage_*.png", DPI:=200)
Takie podejście doskonale oddaje dynamiczne treści internetowe, zachowując wszystkie elementy stylistyczne i renderowane przez JavaScript.
Aby przetwarzać wiele plików PDF w trybie wsadowym, należy zaimplementować prostą pętlę:
string[] pdfFiles = Directory.GetFiles(@"C:\pdfs", "*.pdf");
foreach (string pdfPath in pdfFiles)
{
using (var pdf = PdfDocument.FromFile(pdfPath))
{
string outputPath = Path.Combine(@"C:\images",
Path.GetFileNameWithoutExtension(pdfPath) + "_*.png");
pdf.RasterizeToImageFiles(outputPath);
}
}
string[] pdfFiles = Directory.GetFiles(@"C:\pdfs", "*.pdf");
foreach (string pdfPath in pdfFiles)
{
using (var pdf = PdfDocument.FromFile(pdfPath))
{
string outputPath = Path.Combine(@"C:\images",
Path.GetFileNameWithoutExtension(pdfPath) + "_*.png");
pdf.RasterizeToImageFiles(outputPath);
}
}
Imports System.IO
Dim pdfFiles As String() = Directory.GetFiles("C:\pdfs", "*.pdf")
For Each pdfPath As String In pdfFiles
Using pdf = PdfDocument.FromFile(pdfPath)
Dim outputPath As String = Path.Combine("C:\images", Path.GetFileNameWithoutExtension(pdfPath) & "_*.png")
pdf.RasterizeToImageFiles(outputPath)
End Using
Next
Wnioski
IronPDF ułatwia konwersję dokumentów PDF na pliki graficzne w języku C#. Niezależnie od tego, czy tworzysz miniatury, obrazy PNG, obrazy JPEG, czy też zajmujesz się konwersją plików TIFF dla wielu stron, metoda RasterizeToImageFiles zajmie się wszystkim.
Możesz dostosować formaty wyjściowe, kontrolować jakość obrazu za pomocą ustawień DPI, a nawet konwertować strony internetowe renderowane jako pliki PDF na obrazy — wszystko to bez skomplikowanej konfiguracji. Aby uzyskać dostęp do bardziej zaawansowanych funkcji PDF, zapoznaj się z obszerną dokumentacją IronPDF, która zawiera przykładowy kod i objaśnienia pozwalające odkryć wszystkie możliwości IronPDF.
Chcesz wdrożyć konwersję plików PDF na obrazy w swojej aplikacji napisanej w języku C#? Zacznij od bezpłatnej wersji próbnej, która zapewnia nieograniczoną liczbę konwersji i priorytetową obsługę.
Często Zadawane Pytania
Jak przekonwertować plik PDF na obraz za pomocą języka C#?
Można skorzystać z biblioteki IronPDF, która udostępnia metodę RasterizeToImageFiles do konwersji dokumentów PDF na różne formaty obrazów, takie jak PNG, JPEG, TIFF lub BMP, przy minimalnym nakładzie pracy programistycznej.
Jakie formaty obrazów są obsługiwane przez IronPDF do konwersji plików PDF?
IronPDF obsługuje konwersję plików PDF do kilku formatów graficznych, w tym PNG, JPEG, TIFF i BMP.
Dlaczego miałbym potrzebować konwersji pliku PDF na obraz w języku C#?
Konwersja plików PDF na obrazy może być przydatna do tworzenia miniatur, podglądów internetowych lub archiwizacji, gdzie obrazy są bardziej odpowiednie niż pliki PDF.
Czy IronPDF jest łatwy w użyciu do konwersji plików PDF na obrazy?
Tak, IronPDF jest zaprojektowany z myślą o programistach, umożliwiając konwersję plików PDF na obrazy za pomocą zaledwie kilku linii kodu przy użyciu funkcji RasterizeToImageFiles.
Czy IronPDF obsługuje konwersję wielostronicowych plików PDF na obrazy?
Tak, IronPDF obsługuje wielostronicowe dokumenty PDF, umożliwiając konwersję każdej strony na oddzielny plik graficzny.
Czy IronPDF może konwertować dokumenty PDF na obrazy o wysokiej rozdzielczości?
IronPDF pozwala określić rozdzielczość obrazów wyjściowych, dzięki czemu można generować obrazy o wysokiej rozdzielczości z dokumentów PDF.
Czy IronPDF jest kompatybilny z .NET 10?
Tak — IronPDF jest w pełni kompatybilny z projektami .NET 10, obsługując wszystkie typowe funkcje, takie jak konwersja PDF na obraz, renderowanie HTML oraz interfejs API RasterizeToImageFiles w aplikacjach .NET 10 bez konieczności stosowania obejść.
Jakie wersje .NET i platformy obsługuje IronPDF w zakresie konwersji plików PDF na obrazy?
IronPDF obsługuje .NET 10, 9, 8, 7, 6, 5, .NET Core, .NET Standard oraz .NET Framework. Działa na systemach Windows, macOS i Linux — w tym w środowiskach kontenerowych.

