Jak dodać tabelę do pliku DOCX w języku C# | IronWord

Java PDF do pliku graficznego

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

Konwertuj dokumenty PDF na formaty graficzne, takie jak JPEG, PNG lub TIFF w Javie, korzystając z metody toBufferedImages biblioteki IronPDF. Załaduj plik PDF, wywołaj toBufferedImages, aby uzyskać listę obiektów BufferedImage, a następnie zapisz każdy obraz na dysku za pomocą ImageIO. Cała konwersja zajmuje mniej niż dziesięć wierszy działającego kodu Java.

Szybki start: Konwersja plików PDF na obrazy w Javie

  1. Dodaj zależność IronPDF do swojego projektu Maven: ```xml :title=pom.xml

    com.ironsoftware ironpdf 2024.9.1
  2. Załaduj dokument PDF:

    //:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/load-pdf.java
    PdfDocument pdf = PdfDocument.fromFile(Paths.get("document.pdf"));
    //:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/load-pdf.java
    PdfDocument pdf = PdfDocument.fromFile(Paths.get("document.pdf"));
    JAVA
  3. Konwersja na obrazy i zapis:
    //:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/convert-and-save.java
    List<BufferedImage> images = pdf.toBufferedImages();
    for (int i = 0; i < images.size(); i++) {
    ImageIO.write(images.get(i), "PNG", new File("page_" + i + ".png"));
    }
    //:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/convert-and-save.java
    List<BufferedImage> images = pdf.toBufferedImages();
    for (int i = 0; i < images.size(); i++) {
    ImageIO.write(images.get(i), "PNG", new File("page_" + i + ".png"));
    }
    JAVA

Czym jest konwersja plików PDF na obrazy i dłączego jest potrzebna?

Konwersja PDF na obraz przekształca każdą stronę dokumentu PDF w samodzielny plik obrazu (JPEG, PNG lub TIFF), który można wyświetlać, osadzać lub przetwarzać bez przeglądarki PDF. Standardowe biblioteki Java nie zapewniają wbudowanego mechanizmu do tego, co sprawia, że jest to stały punkt bólu dla programistów potrzebujących podglądów dokumentów, generatorów miniatur lub przewodów archiwizacyjnych.

Częste zastosowania obejmują generowanie podglądów miniatur dla systemów zarządzania dokumentami, produkowanie zrzutów ekranowych poziomu strony dla aplikacji internetowych oraz wyodrębnianie treści wizualnych na potrzeby raportów lub prezentacji. IronPDF zajmuje się całą wewnętrzną złożonością renderowania, więc kod aplikacji pozostaje krótki, a wynik jest pikselowo dokładny, niezależnie od czcionek, grafiki wektorowej czy pól formularzy w źródłowym PDF. Dla operacji odwrotnej polegającej na umieszczaniu obrazów w pliku PDF, zobacz przewodnik zamiany obrazu na PDF.

Czym jest IronPDF for Java i w jaki sposób może pomóc?

IronPDF for Java to biblioteka do tworzenia, czytania i edytowania plików PDF w projektach opartych na Maven. Programiści używają jej do generowania PDF z HTML, modyfikowania istniejących dokumentów i wyodrębniania treści bez zainstalowanego Adobe Acrobat lub jakiejkolwiek przeglądarki PDF na serwerze.

Biblioteka obsługuje niestandardowe nagłówki i stopki, podpisy cyfrowe, tworzenie formularzy, ochronę hasłem oraz renderowanie wielowątkowe. Jej funkcja konwersji plików PDF na obrazy udostępnia przejrzysty interfejs API poprzez dwa przeciążenia toBufferedImages: jedno, które konwertuje każdą stronę przy użyciu ustawień domyślnych, oraz drugie, które akceptuje obiekt ToImageOptions i PageSelection w celu kontrolowania rozdzielczości i zakresu stron. Dla kompletnego przeglądu funkcji odwiedź dokumentację IronPDF for Java. Dla pełnego odniesienia API zobacz Java API reference.

Poza podstawową konwersją, IronPDF obsługuje renderowanie HTML do PDF, własne znaki wodne, tła i warstwy pierwszego planu oraz tworzenie formularzy. Biblioteka wysyła także artefakty Maven w repozytorium Sonatype Maven Central, więc zarządzanie zależnościami przebiega zgodnie z standardowymi przepływami pracy Maven lub Gradle.

Jakie warunki wstępne muszę spełnić przed rozpoczęciem pracy?

Przed rozpoczęciem potwierdź, że następujące rzeczy są na miejscu:

  1. Zainstalowana Java z ustawioną ścieżką w zmiennych środowiskowych. Zobacz oficjalny przewodnik instalacji Java.
  2. Zainstalowane IDE dla Java; Zarówno Eclipse, jak i IntelliJ działają dobrze. Pobierz Eclipse lub IntelliJ IDEA.
  3. Zintegrowany Maven z IDE. Zobacz ten samouczek instalacji Maven dla IntelliJ.
  4. Skonfigurowane klucze licencyjne przed wdrożeniem do środowiska produkcyjnego.

Jak zainstalować IronPDF for Java?

Kiedy wszystkie wymagania wstępne są spełnione, instalacja to pojedyncza deklaracja zależności Maven. Dla szczegółowych kroków konfiguracji zobacz dokumentację rozpoczęcia pracy.

Otwórz JetBrains IntelliJ IDEA i utwórz nowy projekt Maven.

IntelliJ IDEA New Project dialog with Maven selected and Java 16 SDK configured for IronPDF installation

Utwórz nowy projekt Maven

Pojawi się nowe okno. Wpisz nazwę projektu i kliknij Zakończ.

IntelliJ IDEA New Project dialog showing project name entry field and Desktop folder as the project location

Nazwa nowego projektu

Po kliknięciu przycisku "Zakończ" otworzy się nowy projekt, w którym domyślnie wyświetlany jest tekst pom.xml. Dodaj następujące zależności do tego pliku. Opcjonalna pozycja SLF4J tłumi szum logowania podczas rozwoju; usun to, jesli twoj projekt juz zawiera system logowania.

IntelliJ IDEA showing an empty Maven pom.xml with Java 10 compiler settings, ready for IronPDF dependency addition

Nowy Projekt: domyslny pom.xml

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/pom-dependencies.xml
<dependencies>
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>2024.9.1</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.36</version>
    </dependency>
</dependencies>
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/pom-dependencies.xml
<dependencies>
    <dependency>
        <groupId>com.ironsoftware</groupId>
        <artifactId>ironpdf</artifactId>
        <version>2024.9.1</version>
    </dependency>

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.36</version>
    </dependency>
</dependencies>
XML

Po dodaniu zależności do pom.xml w prawym górnym rogu edytora pojawia się ikona synchronizacji Maven.

Maven pom.xml file in IntelliJ IDEA with IronPDF and SLF4J dependency blocks highlighted and the Maven sync icon visible

Dodano zaleznosci Maven

Kliknij ikone synchronizacji, aby pobrac plik JAR IronPDF. Czas pobierania zalezy od predkosci polaczenia, zazwyczaj ponizej dwoch minut. Po instalacji, odwiedz Java API reference, aby zobaczyc wszystkie dostepne metody i opcje konfiguracji. Dla celow wdrozeniowych w chmurze, IronPDF posiada przetestowane przewodniki dla AWS, Azure i Google Cloud.

Jak przekonwertować pliki PDF na obrazy za pomocą IronPDF?

Wywołanie toBufferedImages na obiekcie PdfDocument generuje List<BufferedImage>, gdzie każdy element odpowiada jednej stronie PDF w porządku rosnącym według numerów stron. Nastepnie wynik moze byc zapisany na dysku, przekazany do linii przetwarzania obrazow lub zwrocony bezposrednio do odpowiedzi sieciowej.

IronPDF takze konwertuje URL-i oraz lancuchy HTML do PDFa dynamicznie, mozliwe jest wiec uchwycenie dowolnej strony internetowej lub wyrenderowanego dokumentu HTML jako obrazy w jednej linii przetwarzania bez osobnego kroku renderowania.

Jak przekonwertować istniejący dokument PDF na obrazy?

toBufferedImages akceptuje opcjonalny argument ToImageOptions do kontrolowania wymiarów wyjściowych oraz argument PageSelection do kierowania na konkretne strony. W przypadku braku argumentow, wszystkie strony sa konwertowane w ich naturalnej rozdzielczosci.

Poniższy przykład konwertuje wszystkie strony pliku PDF na pliki PNG, używając ToImageOptions, aby ograniczyć rozmiar każdego obrazu wyjściowego do 800x500 pikseli:

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/convert-pdf-to-images.java
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;

public class Main {
    public static void main(String[] args) throws IOException {
        // Load the PDF document from disk
        PdfDocument pdf = PdfDocument.fromFile(Paths.get("business_plan.pdf"));

        // Configure output image dimensions
        ToImageOptions options = new ToImageOptions();
        options.setImageMaxHeight(800);
        options.setImageMaxWidth(500);

        // Convert all pages to BufferedImage objects with the configured dimensions
        List<BufferedImage> pages = pdf.toBufferedImages(options, PageSelection.allPages());

        // Write each page image to the assets/images folder (create the folder first)
        int pageIndex = 1;
        for (BufferedImage page : pages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(page, "PNG", new File(fileName));
        }
    }
}
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/convert-pdf-to-images.java
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;

public class Main {
    public static void main(String[] args) throws IOException {
        // Load the PDF document from disk
        PdfDocument pdf = PdfDocument.fromFile(Paths.get("business_plan.pdf"));

        // Configure output image dimensions
        ToImageOptions options = new ToImageOptions();
        options.setImageMaxHeight(800);
        options.setImageMaxWidth(500);

        // Convert all pages to BufferedImage objects with the configured dimensions
        List<BufferedImage> pages = pdf.toBufferedImages(options, PageSelection.allPages());

        // Write each page image to the assets/images folder (create the folder first)
        int pageIndex = 1;
        for (BufferedImage page : pages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(page, "PNG", new File(fileName));
        }
    }
}
JAVA

Wynikowe obrazy są zapisywane w assets/images/ z numerycznymi nazwami plików zaczynającymi się od 1. Utwórz ten folder przed uruchomieniem programu, ponieważ ImageIO.write nie tworzy brakujących katalogów. Wywołania setImageMaxHeight i setImageMaxWidth ustalają górne granice dla każdego wymiaru; IronPDF zachowuje oryginalne proporcje i nie rozciaga obrazu.

PoradyAby zapisać w formacie JPEG zamiast PNG, zmień ciąg formatujący w ImageIO.write z "PNG" na "JPEG" i odpowiednio zaktualizuj rozszerzenie pliku.

Windows file explorer showing 11 numbered PNG image files in the assets/images folder after PDF to image conversion

PDF to Images Output - 11 plikow PNG, po jednym na strone

Dla wiecej przykladow konwersji odwiedz strone przykladow rastrowania PDF.

Jak moge przekonwertowac URL do obrazow przy uzyciu IronPDF?

PdfDocument.renderUrlAsPdf pobiera adres URL, renderuje go za pomocą wbudowanego silnika Chromium i zwraca PdfDocument, który można natychmiast przekazać do toBufferedImages. To czyni to prostym, aby uchwycic dowolna publicznie dostepna strone jako serie obrazow.

Przyklad ponizej renderuje strone produktu Amazon do PDF, a nastepnie zapisuje kazda wynikowa strone jako plik PNG:

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/convert-url-to-images.java
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.List;

public class Main {
    public static void main(String[] args) throws IOException {
        // Render a URL to a PDF document using the Chromium rendering engine
        PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://www.amazon.com");

        // Configure output image dimensions
        ToImageOptions options = new ToImageOptions();
        options.setImageMaxHeight(800);
        options.setImageMaxWidth(500);

        // Convert all pages and write to disk
        List<BufferedImage> pages = pdf.toBufferedImages(options, PageSelection.allPages());
        int pageIndex = 1;
        for (BufferedImage page : pages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(page, "PNG", new File(fileName));
        }
    }
}
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/convert-url-to-images.java
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.List;

public class Main {
    public static void main(String[] args) throws IOException {
        // Render a URL to a PDF document using the Chromium rendering engine
        PdfDocument pdf = PdfDocument.renderUrlAsPdf("https://www.amazon.com");

        // Configure output image dimensions
        ToImageOptions options = new ToImageOptions();
        options.setImageMaxHeight(800);
        options.setImageMaxWidth(500);

        // Convert all pages and write to disk
        List<BufferedImage> pages = pdf.toBufferedImages(options, PageSelection.allPages());
        int pageIndex = 1;
        for (BufferedImage page : pages) {
            String fileName = "assets/images/" + pageIndex++ + ".png";
            ImageIO.write(page, "PNG", new File(fileName));
        }
    }
}
JAVA
Windows file explorer showing 5 numbered PNG files in the assets/images folder after converting a URL to images with IronPDF

URL to Images Output - 5 plikow PNG

Dla stron wymagajacych uwierzytelniania lub ciasteczek sesji przed renderowaniem, przeczytaj przewodnik logowan do stron internetowych.

Zwróć uwagęSilnik renderujący Chromium, na którym opiera się renderUrlAsPdf, zapewnia taką samą obsługę CSS i JavaScript jak nowoczesna przeglądarka na komputery stacjonarne. Strony polegajace na JavaScript po stronie klienta do ladowania zawartosci beda renderowane poprawnie, wlaczajac aplikacje jednkartkowe.

Jak przekonwertować określone strony na obrazy?

PageSelection udostępnia kilka metod fabrycznych do kierowania tłumaczenia na podzbiór stron zamiast na cały dokument. To jest przydatne, gdy tylko strona tytulowa, sekcja streszczenia lub znany zakres stron musi zostac wyekstrahowany.

//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/page-selection.java
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;

public class PageSelectionExample {
    public static void main(String[] args) throws IOException {
        PdfDocument pdf = PdfDocument.fromFile(Paths.get("report.pdf"));
        ToImageOptions options = new ToImageOptions();
        options.setImageMaxHeight(800);
        options.setImageMaxWidth(500);

        // Convert only the first page (page index is zero-based)
        List<BufferedImage> coverPage = pdf.toBufferedImages(options, PageSelection.singlePage(0));
        ImageIO.write(coverPage.get(0), "PNG", new File("cover.png"));

        // Convert pages 2 through 5 (zero-based indices 1 through 4)
        List<BufferedImage> excerpt = pdf.toBufferedImages(options, PageSelection.pageRange(1, 4));
        for (int i = 0; i < excerpt.size(); i++) {
            ImageIO.write(excerpt.get(i), "PNG", new File("excerpt_" + (i + 1) + ".png"));
        }
    }
}
//:path=/static-assets/ironpdf-java/content-code-examples/how-to/java-pdf-to-image-tutorial/page-selection.java
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.image.ToImageOptions;
import javax.imageio.ImageIO;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.List;

public class PageSelectionExample {
    public static void main(String[] args) throws IOException {
        PdfDocument pdf = PdfDocument.fromFile(Paths.get("report.pdf"));
        ToImageOptions options = new ToImageOptions();
        options.setImageMaxHeight(800);
        options.setImageMaxWidth(500);

        // Convert only the first page (page index is zero-based)
        List<BufferedImage> coverPage = pdf.toBufferedImages(options, PageSelection.singlePage(0));
        ImageIO.write(coverPage.get(0), "PNG", new File("cover.png"));

        // Convert pages 2 through 5 (zero-based indices 1 through 4)
        List<BufferedImage> excerpt = pdf.toBufferedImages(options, PageSelection.pageRange(1, 4));
        for (int i = 0; i < excerpt.size(); i++) {
            ImageIO.write(excerpt.get(i), "PNG", new File("excerpt_" + (i + 1) + ".png"));
        }
    }
}
JAVA

PageSelection.singlePage(0) dotyczy tylko pierwszej strony, co jest przydatne do wygenerowania miniatury okładki. PageSelection.pageRange(1, 4) wyodrębnia strony od drugiej do piątej przy użyciu indeksów zaczynających się od zera. Oba zwracają List<BufferedImage>, więc wzorzec pętli jest identyczny niezależnie od liczby wybranych stron.

WażneIndeksy stron w PageSelection są liczone od zera: pierwsza strona to 0, druga to 1 i tak dalej. Przekroczenie indeksu poza zakres powoduje wygenerowanie błędu IndexOutOfBoundsException w czasie wykonywania.

Jakie sa nastepne kroki konwersji PDF do obrazow w Java?

Ten przewodnik omowil trzy typowe wzorce: konwersje wszystkich stron istniejacego pliku PDF, przechwycenie URL jako zestaw obrazow stron oraz wyodrebnienie określonego zakresu stron. IronPDF obsługuje kontrolę rozdzielczości i wybór formatu za pomocą ToImageOptions i ImageIO, dzięki czemu kod wywołujący jest krótki i przewidywalny.

Aby kontynuowac budowanie z IronPDF dla Java, zbadz te powiazane zasoby:

IronPDF dla Java jest darmowe do rozwoju. Licencja jest wymagana do wdrozenia komercyjnego. Rozpocznij bezplatna wersje probna lub zobacz opcje licencjonowania, aby zobaczyc, jaki plan pasuje do twojego projektu.

Gotowy, aby zobaczyć, co jeszcze potrafi IronPDF? Sprawdz pelna Strone z tutorialami IronPDF dla Java.

Często Zadawane Pytania

Jak przekonwertować plik PDF do obrazów PNG w Javie?

Załaduj PDF używając PdfDocument.fromFile(), wywołaj toBufferedImages() i uzyskaj listę obiektów BufferedImage reprezentujących każdą stronę, a następnie użyj ImageIO.write(), aby zapisać każdy obraz jako plik PNG.

Jakie formaty obrazów są obsługiwane przy konwertowaniu stron PDF?

Metoda toBufferedImages firmy IronPDF zwraca obiekty BufferedImage. Możesz je zapisać w każdym formacie obsługiwanym przez klasę ImageIO Java, w tym PNG, JPEG i TIFF.

Czy mogę przekonwertować tylko konkretne strony PDF na obrazy?

Tak. Przekaż argument PageSelection do toBufferedImages. Użyj PageSelection.singlePage(0), aby przekonwertować jedną stronę lub PageSelection.pageRange(1, 4), aby przekonwertować zakres. Indeksy stron są zeropodstawowe.

Jakie są typowe zastosowania konwersji PDF na obrazy w Java?

Typowe zastosowania to generowanie miniatur podglądowych dla systemów zarządzania dokumentami, tworzenie zrzutów ekranowych poziomu strony dla aplikacji internetowych, ekstrakcja treści wizualnej do prezentacji i archiwizacja dokumentów jako pliki obrazów dla systemów, które nie obsługują renderowania PDF.

Jak dodać IronPDF do mojego projektu Maven?

Dodaj poniższą zależność w bloku swojego pom.xml: com.ironsoftwareironpdf2024.9.1

Czy mogę bezpośrednio konwertować URL na pliki obrazów?

Tak. Wywołaj PdfDocument.renderUrlAsPdf(url), aby wyrenderować stronę przy użyciu wbudowanego silnika Chromium, a następnie przekazuj wynikowy PdfDocument do toBufferedImages, aby uzyskać listę obrazów stron.

Jak kontrolować rozdzielczość wyjściowego obrazu?

Utwórz instancję ToImageOptions, wywołaj setImageMaxHeight() i setImageMaxWidth(), aby ustawić maksymalne wymiary, a następnie przekaż to jako pierwszy argument do toBufferedImages. IronPDF zachowuje proporcje i nie rozciąga obrazu.

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ąć?
Wersja: 2026.5 just released
Still Scrolling Icon

Wciąż przewijasz?

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