Jak przekonwertować plik PDF na plik graficzny w Node.js

Jak przekonwertować PDF do pliku obrazu w Node.js

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

IronPDF dla Node.js konwertuje strony PDF na obrazy za pomocą jednego wywołania metody. Metoda rasterizeToImageFiles produkuje formaty PNG, JPG, GIF, BMP i inne z dowolnego PDF — jednostronicowego lub wielostronicowego — z bezpośrednią kontrolą nad rozdzielczością wyjściową i wyborem stron.

Metoda automatycznie wykrywa format wyjściowy na podstawie dostarczonego rozszerzenia pliku, więc przełączanie między formatami nie wymaga zmiany konfiguracji. Dla środowisk, gdzie rozszerzenie nie może być zmienione, wyraźna wartość enum ImageType nadpisuje wykrywanie oparte na rozszerzeniu. Dokumentacja IronPDF dla Node.js obejmuje pełny zakres obsługiwanych źródeł wejściowych, w tym ścieżki plików, bufory bajtów i ciągi HTML konwertowane na PDF przed rasteryzacją.

Szybki start: Konwersja PDF do PNG

  1. Zainstalować IronPDF: npm install @ironsoftware/ironpdf
  2. Importować PdfDocument z pakietu
  3. Załadować twój PDF za pomocą PdfDocument.fromFile()
  4. Wywołać rasterizeToImageFiles() z żądaną ścieżką wyjścia
:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/quickstart.js

Jak zainstalować IronPDF for Node.js?

npm i @ironsoftware/ironpdf

Zainstaluj pakiet Node.js IronPDF z npm, aby konwertować PDF na PNG, JPG, GIF, BMP i inne formaty obrazów.

Przed konwersją PDF do obrazów na produkcji, skonfiguruj klucz licencyjny. Pakiet wymaga również zainstalowania IronPDF Engine na Twoim systemie — to binarium obsługuje wszystkie operacje renderowania PDF i musi być obecne, aby konwersja mogła działać.

Jakie są wymagania systemowe?

Wymagana jest Node.js 12 lub nowsza. Plik binarny IronPDF Engine jest pobierany automatycznie przy pierwszym ładowaniu pakietu, ale możesz także zainstalować go ręcznie, jeśli środowisko wdrożeniowe ogranicza dostęp do sieci zewnętrznej. Pakiet @ironsoftware/ironpdf jest dostępny w rejestrze npm i nie zawiera kroku kompilacji modułów natywnych, co upraszcza procesy CI.

Zwróć uwagęPodczas rozwoju klucz licencyjny nie jest wymagany. Zawodnione wyjście jest produkowane w trybie bez licencji. Zawodnione są usuwane, gdy skonfigurowany jest ważny klucz.

Jak przekonwertować plik PDF na obraz?

Metoda rasterizeToImageFiles odczytuje dokument PDF i zapisuje jeden plik obrazu na stronę w przekazanej ścieżce wyjściowej. Dla jednostronicowych PDF produkuje dokładnie jeden obraz. W przypadku PDF-ów wielostronicowych automatycznie dodawany jest sufiks numeru strony do każdej nazwy pliku.

Przykład poniżej ładuje< a href="próbkę" target="_blank">https://www.learningcontainer.com/wp-content/uploads/2019/09/sample-pdf-file.pdf">próbkę PDF z Learning Container i konwertuje ją na plik PNG.

Przeglądarka PDF pokazująca jednokartkowy dokument przykładowy Lorem Ipsum użyty jako wejście przed konwersją PDF na obraz Próbka pliku PDF otwarta w przeglądarce. Pobierz ten plik i inne testowe PDF-y z Learning Container.

:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-to-png.js

PdfDocument.fromFile ładuje PDF i zwraca Obietnicę, która rozwiązuje się do obiektu PdfDocument. Wywołanie zwrotne .then odbiera rozwiązany dokument i wywołuje rasterizeToImageFiles z ścieżką docelową. Rozszerzenie pliku w ścieżce — tutaj .png — mówi IronPDF, jaki format wyprodukować. Blok .catch obsługuje wszelkie błędy odczytu lub konwersji.

Przekonwertowany plik wyjściowy PNG pokazujący treść dokumentu Lorem Ipsum wyrenderowaną jako obraz PNG PNG wygenerowany z powyższego przykładu PDF. IronPDF konwertuje dokument w trzech liniach kodu.

Aby uzyskać bardziej szczegółowe przykłady opcji tej metody, zobacz przykłady kodu PDF do obrazów.

Jak konwertować PDF do formatu JPEG?

Wybór formatu jest automatyczny: każde rozszerzenie, które przekażesz do rasterizeToImageFiles, określa format wyjściowy. Aby uzyskać JPEG zamiast PNG, zmień rozszerzenie w ścieżce docelowej:

//:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-to-jpeg-extension.js
// Switch to JPEG by changing the file extension in the output path.
pdf.rasterizeToImageFiles("./images/pdf-to-jpeg.jpg");

Gdy nie można kontrolować nazwy pliku wyjściowego — na przykład, w zautomatyzowanych potokach z ustalonymi schematami nazw — przekaż wartość ImageType w obiekcie opcji, aby nadpisać wykrywanie oparte na rozszerzeniu:

:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-to-jpeg-imagetype.js

Właściwość type w obiekcie opcji ma wyższy priorytet niż rozszerzenie nazwy pliku. W powyższym przykładzie rasterizeToImageFiles produkuje plik JPEG, mimo że ścieżka docelowa kończy się na .png. Ten sam wzór dotyczy wyjść GIF i BMP.

Jak ustawienia DPI wpływają na jakość wyjścia?

Właściwość dpi w obiekcie opcji kontroluje zagęszczenie pikseli wyjściu rastrowanego. Wyższe wartości dają większe pliki z większą szczegółowością; niższe wartości zmniejszają rozmiar pliku kosztem ostrości.

PoradyUstawienie dpi: 300 produkuje obrazy nadające się do druku w wysokiej rozdzielczości, odpowiednie do drukowania wysokiej jakości lub archiwizacji. Dla wyświetlania na ekranie lub generowania miniatur, dpi: 96 zmniejsza rozmiar pliku, jednocześnie utrzymując wystarczającą czystość dla użytku online.

DPI wynoszące 150 to rozsądna wartość domyślna dla większości scenariuszy archiwizacji lub podglądu — wyjście jest wystarczająco wyraźne do czytania na ekranie, a rozmiary plików pozostają na akceptowalnym poziomie. Do treści, które mają być drukowane lub poddawane OCR po konwersji, preferowane jest 300 DPI lub więcej.

Icon Quote related to Jak ustawienia DPI wpływają na jakość wyjścia?

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 ustawienia DPI wpływają na jakość wyjścia?

Milan Jovanovic

Microsoft MVP

Zobacz studium przypadku
Icon Quote related to Jak ustawienia DPI wpływają na jakość wyjścia?

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 ustawienia DPI wpływają na jakość wyjścia?

Brent Matzelle

Dyrektor technologiczny, OPYN

Zobacz studium przypadku
Icon Quote related to Jak ustawienia DPI wpływają na jakość wyjścia?

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 ustawienia DPI wpływają na jakość wyjścia?

David Jones

Główny inżynier oprogramowania, Agorus Build

Zobacz studium przypadku

Jak konwertować wielostronicowy PDF na obrazy?

Dla dokumentów z więcej niż jedną stroną, rasterizeToImageFiles tworzy jeden obraz na stronę. IronPDF dodaje indeks strony zaczynający od zera do każdej nazwy pliku wyjściowego, utrzymując porządek bez konieczności pisania dodatkowego kodu.

Dwustronicowy dokument PDF otwarty w przeglądarce, pokazujący dwie strony przykładowej treści przed konwersją na obraz Próbka dwustronicowego PDF-a. IronPDF tworzy jeden plik obrazu na stronę podczas konwersji.

:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-multipage.js

Dwa pliki wyjściowe PNG — multipage-pdf-page_1.png i multipage-pdf-page_2.png — utworzone z dwustronicowego dokumentu PDF powyżej Dwa pliki PNG wytworzone z dwustronicowego PDF-a. IronPDF nazywa każdy plik wyjściowy numerem strony.

To automatyczne dzielenie na strony działa ze wszystkimi obsługiwanymi formatami obrazów. Połącz z opcją fromPages w następnej sekcji, aby przekonwertować tylko określone strony z dużych dokumentów. Aby pracować w przeciwnym kierunku, przykład obraz do PDF pokazuje, jak łączyć wiele plików obrazów w jeden dokument PDF.

Jak są strukturyzowane nazwy plików wyjściowych?

Wzór nazwy pliku używa numeru strony zaczynającego się od jedynki poprzedzającego rozszerzenie pliku. Jeśli ścieżka wyników to ./images/report-page.png, trzystronicowy PDF produkuje report-page_1.png, report-page_2.png, i report-page_3.png. Katalog wyjściowy musi istnieć przed wywołaniem rasterizeToImageFiles — metoda nie tworzy automatycznie brakujących katalogów.

WażneUtworzyć katalog wyjściowy przed wywołaniem rasterizeToImageFiles. Metoda wyrzuca błąd, jeśli katalog docelowy nie istnieje. Użyj Node.js's fs.mkdirSync('./images/output', { recursive: true }), aby go utworzyć wcześniej.

Jak konwertować tylko konkretne strony?

Właściwość fromPages w obiekcie opcji akceptuje tablicę z indeksami stron zaczynającymi się od zera. Tylko określone strony są rastrowane; wszystkie inne zostają pominięte. To przydatne, gdy pracujesz z dużymi PDF-ami, gdzie potrzebna jest tylko podgrupa stron — na przykład wydobycie stron tytułowych i początkowych dla sekcji dla podglądu dokumentu. Gdy musisz pracować z indywidualnymi stronami przed ich konwersją, dokumentacja API Node.js dla PdfDocument dokumentuje dodatkowe operacje na poziomie stron.

:path=/static-assets/pdf/content-code-examples/how-to/nodejs-pdf-to-image/convert-selective-pages.js

Cztery pliki wyjściowe BMP oznaczone multipage-pdf-page_1, page_4, page_7, i page_9 utworzone z dużego pliku PDF IronPDF rastruje tylko cztery strony określone w tablicy fromPages. Pozostałe strony nie zostały przetworzone.

Indeksy stron w fromPages są oparte na zerze, więc [0, 3, 5, 8] celuje w pierwszą, czwartą, szóstą i dziewiątą stronę. Wartość DPI równą 150 balansuje jakość wyjścia z rozmiarem pliku — odpowiednia do przypadku użycia w archiwizacji lub podglądzie. Selektoryczna konwersja jest kompatybilna z wszystkimi obsługiwanymi typami obrazów.

Zwróć uwagęPobierz próbkę PDF z obrazami używaną w powyższym przykładzie z Learning Container.

Jaka jest różnica między numeracją stron zaczynającą się od zera a zaczynającą się od jedynki?

fromPages używa indeksowania opartego na zerze, zgodnie ze standardową konwencją tablic JavaScript. Strona 1 dokumentu odpowiada indeksowi 0, strona 2 indeksowi 1, i tak dalej. Różni się to od numeracji stron zaczynającej się od jedynki, którą widać w przeglądarkach PDF. Przy konwersji numerów stron widza na indeksy fromPages, odejmij jeden od każdej liczby stron.

PoradyAby przekonwertować ostatnią stronę dowolnego PDF bez wcześniejszej wiedzy o całkowitej liczbie stron, przeczytaj liczbę stron używając pdf.pageCount() z API PdfDocument i użyj [pdf.pageCount() - 1] jako wartości fromPages.

Jakie są kolejne kroki konwersji PDF na obraz?

Metoda rasterizeToImageFiles IronPDF obsługuje wybór formatu, podział na wiele stron i wybiórczą konwersję stron w spójne API. Obiekt opcji jest jedynym punktem rozszerzania dla nadpisywania formatu, kontroli DPI i filtrowania stron.

Aby iść dalej, dokumentacja API Node.js IronPDF dokumentuje wszystkie parametry dostępne na rasterizeToImageFiles i klasie PdfDocument. Przykład kodu PDF to Images pokazuje użycie rasterizeToImageFiles z dodatkowymi ustawieniami konfiguracji. Aby pracować w przeciwnym kierunku, zobacz konwersję obrazów na pliki PDF lub konwersję wieloklatkowych plików TIFF na PDF.

Rozpocznij darmową wersję próbną IronPDF dla Node.js, aby przetestować konwersję PDF na obraz w swoim własnym projekcie. Zobacz opcje licencyjne, aby znaleźć plan pasujący do twojego zespołu.

Gotowy, aby zobaczyć, co jeszcze potrafi IronPDF? Przejrzyj pełen samouczek dla Node.js tutaj: HTML do PDF w Node.js

Często Zadawane Pytania

Jak przekonwertować plik PDF na obraz w Node.js?

Użyj metody IronPDF rasterizeToImageFiles. Zainstaluj pakiet za pomocą npm install @ironsoftware/ironpdf, załaduj swój PDF przez PdfDocument.fromFile(), a następnie wywołaj rasterizeToImageFiles() z podaną ścieżką wyjściową. Rozszerzenie pliku automatycznie określa format wyjściowy.

Jakie formaty obrazów obsługuje rasterizeToImageFiles?

IronPDF obsługuje wyjścia w formatach PNG, JPG, GIF i BMP. Format jest wykrywany na podstawie rozszerzenia pliku w ścieżce wyjściowej. Aby to obejść, przekaż w obiekcie z opcjami wartość enum ImageType: na przykład { type: ImageType.JPG } wymusza wyjście w JPEG bez względu na rozszerzenie nazwy pliku.

Jak przekonwertować tylko określone strony PDF na obrazy?

Przekaż tablicę fromPages w obiekcie z opcjami. Tablica akceptuje indeksy stron oparte na zerach, więc fromPages: [0, 2, 4] konwertuje pierwszą, trzecią i piątą stronę. Strony nie wymienione w tablicy zostaną pominięte.

Jakie DPI powinienem użyć przy konwersji PDF na obraz?

Ustaw właściwość dpi w obiekcie z opcjami. Użyj dpi: 96 do wyświetlania na ekranie i miniatur, dpi: 150 do archiwizacji i wizualizacji, a dpi: 300 do wyjść o jakości drukowanej lub treści, które będą przetwarzane przez OCR po konwersji.

Jakie są wymagania instalacyjne dla IronPDF w Node.js?

Wymagana jest wersja Node.js 12 lub nowsza. Zainstaluj pakiet za pomocą npm install @ironsoftware/ironpdf. Plik binarny IronPDF Engine pobiera się automatycznie przy pierwszym użyciu i obsługuje całe renderowanie PDF. W przypadku produkcji, skonfiguruj klucz licencyjny, aby usunąć znaki wodne z wyjścia.

Jak są strukturyzowane nazwy plików wyjściowych dla wielostronicowych PDF-ów?

IronPDF dodaje numer strony oparty na jedynce przed rozszerzeniem pliku. Jeśli ścieżka wyjściowa to report-page.png, trzystronicowy PDF produkuje report-page_1.png, report-page_2.png i report-page_3.png. Katalog wyjściowy musi istnieć przed wywołaniem metody.

Czy konwersja PDF na obraz jest asynchroniczna w Node.js?

Tak. Zarówno PdfDocument.fromFile(), jak i rasterizeToImageFiles() zwracają Obietnice. Połącz .then() dla ścieżki sukcesu i .catch(), aby obsłużyć błędy konwersji. Można również użyć składni async/await z tymi metodami.

Darrius Serrant
Inżynier oprogramowania Full Stack (WebOps)

Darrius Serrant posiada tytuł licencjata z informatyki z Uniwersytetu Miami i pracuje jako Full Stack WebOps Marketing Engineer w Iron Software. Już od młodych lat zainteresował się kodowaniem, postrzegając informatykę jako zarówno tajemniczą, jak i dostępną, co czyni ją doskonałym medium dla kreatywności ...

Czytaj więcej
Gotowy, aby rozpocząć?
Wersja: 2026.6 właśnie wydany
Still Scrolling Icon

Wciąż przewijasz?

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