Jane z
Jane z
Read 2 minutes

Разделение PDF-файла с помощью Java

В повседневной работе, когда мы манипулируем большим файлом PDF, мы можем разделить его на несколько небольших файлов, чтобы упростить чтение или редактирование. Сегодня я собираюсь представить два способа разделения файла PDF с помощью Free Spire.PDF for Java.

  1. Разделите каждую страницу PDF-файла в отдельный файл.
  2. Разделите определенные диапазоны страниц PDF-файла на несколько файлов.

Конфигурация среды

Метод 1: Загрузите Free Spire.PDF for Java и разархивируйте его. Затем добавьте файл Spire.Pdf.jar в свой проект в качестве зависимости.

Метод 2: Установите пакет jar через репозиторий Maven, и код для настройки файла pom.xml выглядит следующим образом:

<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>http://repo.e-iceblue.com/nexus/content/groups/public/</url> </repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf.free</artifactId>
<version>4.3.0</version>
</dependency>
</dependencies>

Исходный PDF-файл (5 страниц):

Image for post

【Пример 1】 Разделите каждую страницу PDF-файла в отдельный файл:
Разделите исходный PDF-файл на 5 небольших документов

import com.spire.pdf.*;

public class SplitPDF {
public static void main(String[] args)
{

//Загрузите файл PDF PdfDocument doc = new PdfDocument();
doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.pdf");

//Разделите каждую страницу PDF-файла в отдельный файл doc.split("out/splitDocument-{0}.pdf", 0);
doc.close();
}
}
Image for post

【Пример 2】 Разделение определенных диапазонов страниц PDF-файла на несколько файлов:
Разделите страницы 1-2 в файл PDF и разделите страницы 3-5 в другой файл PDF.

import com.spire.pdf.*;
import com.spire.pdf.graphics.PdfMargins;

import java.awt.geom.Point2D;

public class SplitPDF {
public static void main(String[] args)
{

//Загрузите файл PDF PdfDocument doc = new PdfDocument(); doc.loadFromFile("C:\\Users\\Administrator\\Desktop\\input.pdf");

//Создать новый PDF-файл
PdfDocument newDoc1 = new PdfDocument();

PdfPageBase page;

//Добавьте 2 страницы в новый PDF-файл и нарисуйте содержимое страницы 1-2 исходного PDF-файла на вновь добавленных страницах.
for(int i = 0;i<2;i++)
{
page = newDoc1.getPages().add(doc.getPages().get(i).getSize(), new PdfMargins(0));
doc.getPages().get(i).createTemplate().draw(page, new Point2D.Float(0,0));
}

//Сохраните файл результатов
newDoc1.saveToFile("split/Doc1.pdf");

//Создать новый PDF-файл
PdfDocument newDoc2 = new PdfDocument();

//Добавьте 3 страницы в новый PDF-файл и нарисуйте содержимое страниц 3-5 исходного PDF-файла на вновь добавленных страницах.
for(int i = 2;i<5;i++) { page = newDoc2.getPages().add(doc.getPages().get(i).getSize(), new PdfMargins(0)); doc.getPages().get(i).createTemplate().draw(page, new Point2D.Float(0,0)); } //Сохраните файл результатов
newDoc2.saveToFile("split/Doc2.pdf"); } }
Image for post
7 views
Add
More
Jane z
Follow