Могут быть различные случаи, когда вам нужно разделить PDF на несколько файлов PDF. Например, вам может потребоваться разделить каждую страницу PDF-файла, содержащую счета-фактуры/квитанции, и сохранить их в виде отдельных файлов. С другой стороны, вы можете захотеть разделить определенный набор страниц из файла PDF. Чтобы иметь дело с вышеупомянутыми сценариями, в этой статье рассказывается, как разделить файл PDF на несколько файлов PDF с помощью Java.
- Java API для разделения файлов PDF
- Разделить PDF-файл на каждую страницу с помощью Java
- Разделить PDF-файл по коллекции страниц с помощью Java
- Получить бесплатную лицензию
Java API для разделения PDF-файлов — скачать бесплатно
Чтобы разделить PDF-файлы, мы воспользуемся возможностями обработки PDF-файлов Aspose.PDF for Java. API позволяет выполнить операцию разделения PDF за несколько шагов. Вы можете либо загрузить 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>20.12</version>
<classifier>jdk17</classifier>
</dependency>
Разделить файл PDF с помощью Java
Критерии разделения PDF могут различаться в разных сценариях в соответствии с требованиями. Во-первых, давайте посмотрим, как разделить PDF-файл на страницы и сохранить каждую страницу как отдельный PDF-файл. Ниже приведены шаги для выполнения этой операции.
- Загрузите документ PDF, используя класс Document.
- Пролистайте страницы, используя метод Document.getPages().
- Доступ к каждой странице в объекте Page.
- На каждой итерации создавайте новый Документ, добавляйте текущую страницу в документ и сохраняйте ее как файл PDF с помощью метода Document.save(String).
В следующем примере кода показано, как разделить файл PDF с помощью Java.
// Открыть документ
Document pdfDocument = new Document("input.pdf");
// Для счетчика страниц
int pageCount = 1;
// Пролистайте все страницы
for (Page pdfPage : pdfDocument.getPages()) {
// Создать новый документ
Document newDocument = new Document();
// Добавить страницу в документ
newDocument.getPages().add(pdfPage);
// Сохранить как PDF
newDocument.save("page_" + pageCount + "_out" + ".pdf");
pageCount++;
}
Разделить PDF-файл по коллекции страниц с помощью Java
Для демонстрации давайте посмотрим на другой сценарий разделения PDF. В этом примере мы разделим PDF-файл на четные и нечетные номера страниц. Ниже приведены шаги для выполнения этой операции.
- Загрузите документ PDF, используя класс Document.
- Пролистайте страницы, используя метод Document.getPages().
- Разделяйте четные и нечетные страницы в ArrayList объекты.
- Создайте новый объект Document, добавьте страницы в документ и сохраните его как файл PDF с помощью метода Document.save(String).
В следующем примере кода показано, как разделить четные и нечетные страницы в файле PDF с помощью Java.
// Открыть документ
Document pdfDocument = new Document("input.pdf");
// Создание списков массивов для четных и нечетных страниц
List<Page> evenPages = new ArrayList<Page>();
List<Page> oddPages = new ArrayList<Page>();
// Пролистайте все страницы
for (Page pdfPage : pdfDocument.getPages())
{
if(pdfPage.getNumber()%2==0)
{
evenPages.add(pdfPage);
}
else
{
oddPages.add(pdfPage);
}
}
// Сохраняйте четные страницы в формате PDF
Document newDocument = new Document();
newDocument.getPages().add(evenPages);
newDocument.save("split_even_Pages.pdf");
// Сохранить нечетные страницы в формате PDF
newDocument = new Document();
newDocument.getPages().add(oddPages);
newDocument.save("split_odd_Pages.pdf");
Получить бесплатную лицензию
Вы можете получить бесплатную временную лицензию, чтобы попробовать API без ограничений на пробную версию.
Вывод
В этой статье вы узнали, как разделить файл PDF с помощью Java. Кроме того, вы увидели, как настроить критерии разделения PDF в соответствии с требованиями. Вы можете узнать больше об API, используя документацию.