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 i manipulowania obrazami w formacie PDF
- Dodaj obraz w pliku PDF przy użyciu języka Java
- Wyodrębnij obraz z pliku PDF za pomocą języka Java
- Usuń obrazy z pliku PDF za pomocą języka Java
- Zastąp obraz w pliku PDF za pomocą języka Java
- Uzyskaj bezpłatną licencję
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.
- Najpierw utwórz instancję klasy Document, aby załadować dokument PDF.
- Pobierz Page, do której chcesz dodać obraz, używając metody Document.getPages().getItem(int).
- Załaduj plik obrazu do obiektu FileInputStream.
- Dodaj obraz do zasobów strony metodą Page.getResources().getImages().add(FileInputStream).
- Użyj operatorów, aby umieścić obraz na stronie:
- Operator GSave do zapisania aktualnego stanu graficznego.
- ConcatenateMatrix, aby określić, gdzie ma zostać umieszczony obraz.
- Operator Do, aby narysować obraz na stronie.
- GRestore, aby zapisać zaktualizowany stan graficzny.
- Na koniec zapisz zaktualizowany plik PDF za pomocą metody Document.save(string).
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.
- Utwórz instancję klasy Document, aby załadować dokument PDF.
- Wyodrębnij żądany obraz do obiektu XImage za pomocą metody Document.getPages().getItem(int).getResources().getImages().getItem(int).
- Możesz także przejść przez kolekcję obrazów, aby wyodrębnić i zapisać wszystkie obrazy.
- Na koniec zapisz wyodrębniony obraz jako plik, używając OutputStream.
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.
- Załaduj plik PDF do obiektu Document.
- Usuń żądane obrazy, korzystając z jednej z poniższych metod.
- kasować() to delete images from collection.
- usuń (indeks int) to delete an image from the collection by index.
- usuń (nazwa ciągu) to delete an image from the collection by name.
- Na koniec zapisz zaktualizowany plik PDF przy użyciu metody Document.save(string).
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.
- Załaduj plik PDF do obiektu Document.
- Załaduj nowy obraz do obiektu FileInputStream.
- Użyj metody Document.getPages().getItem(int).getResources().getImages().replace(int, FileInputStream), aby zastąpić obraz, określając indeks.
- Na koniec zapisz zaktualizowany plik PDF przy użyciu metody Document.save(string).
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.