Изображения широко используются для различных типов изображений и демонстраций в файлах PDF. В этой статье вы узнаете, как программно управлять изображениями в файлах PDF. В частности, в статье будет рассказано, как добавлять, извлекать, удалять или заменять изображения в файлах PDF с помощью Java.
- Java API для добавления изображений в PDF и управления ими
- Добавить изображение в PDF с помощью Java
- Извлечь изображение из PDF с помощью Java
- Удалить изображения из PDF с помощью Java
- Заменить изображение в PDF с помощью Java
- Получить бесплатную лицензию
Java API для добавления изображений в PDF и управления ими — скачать бесплатно
Aspose.PDF for Java — это мощный API, предоставляющий широкий спектр функций для работы с PDF. API позволяет беспрепятственно работать с текстом, аннотациями или изображениями в файлах PDF. Вы можете либо скачать JAR-файл API, либо установить его, используя следующие конфигурации Maven.
<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>
Добавить изображение в файл PDF в Java
Ниже приведены шаги для добавления изображения в файл PDF на Java.
- Сначала создайте экземпляр класса Document для загрузки документа PDF.
- Получите Page, на которую вы хотите добавить изображение, используя метод Document.getPages().get_Item(int).
- Загрузите файл изображения в объект FileInputStream.
- Добавьте изображение в ресурсы страницы с помощью метода Page.getResources().getImages().add(FileInputStream).
- Используйте операторы для размещения изображения на странице:
- Оператор GSave для сохранения текущего графического состояния.
- Оператор ConcatenateMatrix для указания места размещения изображения.
- Оператор Do для отрисовки изображения на странице.
- Оператор GRestore для сохранения обновленного графического состояния.
- Наконец, сохраните обновленный PDF-файл, используя метод Document.save(string).
В следующем примере кода показано, как добавить изображение в файл PDF на Java.
// Откройте документ
Document pdfDocument1 = new Document("input.pdf");
// Установить координаты
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;
// Получите страницу, на которую вы хотите добавить изображение
Page page = pdfDocument1.getPages().get_Item(1);
// Загрузить изображение в поток
java.io.FileInputStream imageStream = new java.io.FileInputStream(new java.io.File("input_image1.jpg"));
// Добавьте изображение в коллекцию изображений ресурсов страницы.
page.getResources().getImages().add(imageStream);
// Использование оператора GSave: этот оператор сохраняет текущее состояние графики.
page.getContents().add(new Operator.GSave());
// Создание объектов «Прямоугольник» и «Матрица»
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() });
// Использование оператора ConcatenateMatrix (сцепление матрицы): определяет, как должно быть размещено изображение.
page.getContents().add(new Operator.ConcatenateMatrix(matrix));
XImage ximage = page.getResources().getImages().get_Item(page.getResources().getImages().size());
// Использование оператора Do: этот оператор рисует изображение
page.getContents().add(new Operator.Do(ximage.getName()));
// Использование оператора GRestore: этот оператор восстанавливает состояние графики
page.getContents().add(new Operator.GRestore());
// Сохраните новый PDF
pdfDocument1.save("Updated_document.pdf");
// Закрыть поток изображений
imageStream.close();
Извлечение изображений из файла PDF с помощью Java
Ниже приведены шаги для извлечения изображений из документа PDF с помощью Java.
- Создайте экземпляр класса Document для загрузки документа PDF.
- Извлеките нужное изображение в объект XImage с помощью метода Document.getPages().get_Item(int).getResources().getImages().get_Item(int).
- Вы также можете просмотреть коллекцию изображений, чтобы извлечь и сохранить все изображения.
- Наконец, сохраните извлеченное изображение в виде файла с помощью OutputStream.
В следующем примере кода показано, как извлекать изображения из файлов PDF с помощью Java.
// Откройте документ
Document pdfDocument = new Document("input.pdf");
// Извлечь конкретное изображение
XImage xImage = pdfDocument.getPages().get_Item(1).getResources().getImages().get_Item(1);
// Создайте объект потока, чтобы сохранить выходное изображение
java.io.OutputStream output = new java.io.FileOutputStream("output.jpg");
// Сохраните выходное изображение
xImage.save(output);
// Закрыть поток
output.close();
Удалить изображения из файла PDF с помощью Java
Ниже приведены шаги по удалению изображения из файла PDF с помощью Java.
- Загрузите файл PDF в объект Документ.
- Удалите нужные изображения одним из следующих способов.
- Удалить() to delete images from collection.
- удалить (внутренний индекс) to delete an image from the collection by index.
- удалить (имя строки) to delete an image from the collection by name.
- Наконец, сохраните обновленный файл PDF с помощью метода Document.save(string).
В следующем примере кода показано, как удалить изображение в PDF с помощью Java.
// Откройте документ
Document pdfDocument = new Document("input.pdf");
// Удалить конкретное изображение
pdfDocument.getPages().get_Item(1).getResources().getImages().delete(1);
// Сохраните обновленный файл PDF
pdfDocument.save("output.pdf");
Замените изображение в файле PDF с помощью Java
Ниже приведены шаги по замене изображения в файле PDF с помощью Java.
- Загрузите файл PDF в объект Документ.
- Загрузите новое изображение в объект FileInputStream.
- Используйте метод Document.getPages().get_Item(int).getResources().getImages().replace(int, FileInputStream), чтобы заменить изображение, указав индекс.
- Наконец, сохраните обновленный файл PDF с помощью метода Document.save(string).
В следующем примере кода показано, как заменить изображение в PDF с помощью Java.
// Откройте документ
Document pdfDocument = new Document("input.pdf");
// Заменить конкретное изображение
pdfDocument.getPages().get_Item(1).getResources().getImages().replace(1, new java.io.FileInputStream(new java.io.File("apose.png")));
// Сохраните обновленный файл PDF
pdfDocument.save("output.pdf");
Java API для добавления изображений в PDF — получите бесплатную лицензию API
Вы можете бесплатно попробовать Aspose.PDF для Java, получив временную лицензию.
Вывод
В этой статье вы узнали, как управлять изображениями в файлах PDF с помощью Java. В пошаговом руководстве и примерах кода показано, как извлекать, добавлять, удалять и заменять изображения в файле PDF. Вы можете изучить другие функции Aspose.PDF для Java, используя документацию. В случае возникновения вопросов вы можете связаться с нами через наш форум.