Praca z obrazami PDF przy użyciu języka Java

Obrazy są szeroko stosowane w różnego rodzaju przedstawieniach i demonstracjach w plikach PDF. W tym artykule dowiesz się, jak programowo manipulować obrazami w plikach PDF. W szczególności artykuł dotyczy dodawania, wyodrębniania, usuwania lub zastępowania obrazów w plikach PDF za pomocą Java.

Java API do dodawania obrazów w formacie PDF i manipulowania nimi — do pobrania za darmo

Aspose.PDF for Java to potężny interfejs API, który zapewnia szeroki zakres funkcji manipulacji plikami PDF. Interfejs API umożliwia bezproblemową pracę z tekstem, adnotacjami lub obrazami w plikach PDF. Możesz pobrać plik JAR interfejsu API lub zainstalować go przy użyciu następujących konfiguracji Mavena.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>21.2</version>
</dependency>

Dodaj obraz do pliku PDF w Javie

Poniżej przedstawiono kroki, aby dodać obraz do pliku PDF w Javie.

Poniższy przykładowy kod pokazuje, jak dodać obraz do pliku PDF w Javie.

// Otwórz dokument
Document pdfDocument1 = new Document("input.pdf");

// Ustaw współrzędne
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;

// Pobierz stronę, do której chcesz dodać obraz
Page page = pdfDocument1.getPages().get_Item(1);

// Załaduj obraz do strumienia
java.io.FileInputStream imageStream = new java.io.FileInputStream(new java.io.File("input_image1.jpg"));

// Dodaj obraz do kolekcji obrazów zasobów strony
page.getResources().getImages().add(imageStream);

// Użycie operatora GSave: ten operator zapisuje aktualny stan grafiki
page.getContents().add(new Operator.GSave());

// Twórz obiekty prostokątne i macierzowe
Rectangle rectangle = new Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.getURX() - rectangle.getLLX(), 0, 0, rectangle.getURY() - rectangle.getLLY(), rectangle.getLLX(), rectangle.getLLY() });

// Używając operatora ConcatenateMatrix (matryca konkatenacyjna): określa sposób umieszczenia obrazu
page.getContents().add(new Operator.ConcatenateMatrix(matrix));
XImage ximage = page.getResources().getImages().get_Item(page.getResources().getImages().size());

// Użycie operatora Do: ten operator rysuje obraz
page.getContents().add(new Operator.Do(ximage.getName()));

// Używając operatora GRestore: ten operator przywraca stan grafiki
page.getContents().add(new Operator.GRestore());

// Zapisz nowy plik PDF
pdfDocument1.save("Updated_document.pdf");

// Zamknij strumień obrazów
imageStream.close();

Wyodrębnij obrazy z pliku PDF za pomocą języka Java

Poniżej przedstawiono kroki, aby wyodrębnić obrazy z dokumentu PDF za pomocą języka Java.

Poniższy przykładowy kod pokazuje, jak wyodrębnić obrazy z plików PDF przy użyciu języka Java.

// Otwórz dokument
Document pdfDocument = new Document("input.pdf");

// Wyodrębnij określony obraz
XImage xImage = pdfDocument.getPages().get_Item(1).getResources().getImages().get_Item(1);

// Utwórz obiekt strumienia, aby zapisać obraz wyjściowy
java.io.OutputStream output = new java.io.FileOutputStream("output.jpg");

// Zapisz obraz wyjściowy
xImage.save(output);

// Zamknij strumień
output.close();

Usuń obrazy z pliku PDF za pomocą Java

Poniżej przedstawiono kroki, aby usunąć obraz z pliku PDF za pomocą języka Java.

Poniższy przykładowy kod pokazuje, jak usunąć obraz w formacie PDF przy użyciu języka Java.

// Otwórz dokument
Document pdfDocument = new Document("input.pdf");

// Usuń określony obraz
pdfDocument.getPages().get_Item(1).getResources().getImages().delete(1);

// Zapisz zaktualizowany plik PDF
pdfDocument.save("output.pdf");

Zastąp obraz w pliku PDF za pomocą języka Java

Poniżej przedstawiono kroki, aby zamienić obraz w pliku PDF przy użyciu języka Java.

Poniższy przykładowy kod pokazuje, jak zamienić obraz w pliku PDF przy użyciu języka Java.

// Otwórz dokument
Document pdfDocument = new Document("input.pdf");

// Zastąp określony obraz
pdfDocument.getPages().get_Item(1).getResources().getImages().replace(1, new java.io.FileInputStream(new java.io.File("aspose.png")));

// Zapisz zaktualizowany plik PDF
pdfDocument.save("output.pdf");

Java API do dodawania obrazów w formacie PDF — uzyskaj bezpłatną licencję API

Możesz wypróbować Aspose.PDF for Java za darmo, uzyskując tymczasową licencję.

Wniosek

W tym artykule nauczyłeś się manipulować obrazami w plikach PDF za pomocą języka Java. Przewodnik krok po kroku i przykłady kodu pokazują, jak wyodrębniać, dodawać, usuwać i zastępować obrazy w pliku PDF. Możesz zapoznać się z innymi funkcjami Aspose.PDF for Java, korzystając z dokumentacji. W przypadku jakichkolwiek pytań możesz skontaktować się z nami za pośrednictwem naszego forum.

Zobacz też