Cách trích xuất các trang PDF trong Java

Trích xuất các trang từ PDF trong Java - Tách các trang PDF trực tuyến.

Nếu đang làm việc với các tệp PDF, bạn có thể gặp phải trường hợp cần trích xuất các trang từ tệp PDF. Trích xuất các trang từ tệp PDF có thể là một công việc tốn thời gian, đặc biệt nếu bạn phải thực hiện thủ công hoặc xử lý các tài liệu lớn. May mắn thay, với sự trợ giúp của GroupDocs.Merger Cloud SDK dành cho Java, bạn có thể dễ dàng trích xuất các trang từ tệp PDF theo chương trình. Trong bài viết này, chúng ta sẽ khám phá cách trích xuất các trang từ PDF trong Java.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

Trình trích xuất trang Java PDF Cài đặt API REST và SDK

GroupDocs.Merger Cloud SDK cho Java là một API dựa trên đám mây cho phép các nhà phát triển hợp nhất, trích xuất, tách, sắp xếp lại và xóa các trang khỏi tệp và các loại tài liệu khác, bao gồm cả Word, Excel , PowerPoint, HTML, PDF, v.v. SDK mạnh mẽ này rất dễ sử dụng và có thể được tích hợp vào một ứng dụng dựa trên Java để tự động hóa các tác vụ thao tác với tệp.

Bạn có thể tải xuống tệp JAR của API hoặc cài đặt nó bằng Maven bằng cách thêm kho lưu trữ và phần phụ thuộc sau vào tệp pom.xml của dự án:

Kho lưu trữ Maven:

<repository>
    <id>groupdocs-artifact-repository</id>
    <name>GroupDocs Artifact Repository</name>
    <url>https://repository.groupdocs.cloud/repo</url>
</repository>

Phụ thuộc Maven:

<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-merger-cloud</artifactId>
    <version>23.2</version>
    <scope>compile</scope>
</dependency>

Bây giờ, bạn cần đăng ký để có tài khoản dùng thử miễn phí hoặc mua gói đăng ký trên trang web GroupDocs để lấy khóa API của bạn. Sau khi bạn có Id ứng dụng khách và Bí mật ứng dụng khách, hãy thêm đoạn mã bên dưới vào ứng dụng dựa trên Java:

# Nhận client_id và client_secret của bạn từ https://dashboard.groupdocs.cloud sau khi đăng ký.

String ClientId = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
String ClientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
String MyStorage = "test-internal-storage";
Configuration configuration = new Configuration(ClientId, ClientSecret);

Cách trích xuất trang PDF theo số trang chính xác trong Java

Để trích xuất các trang từ tệp PDF bằng GroupDocs.Merger Cloud SDK dành cho Java, bạn cần thực hiện theo các bước sau:

Tải tệp lên

Đầu tiên, tải tệp PDF lên đám mây bằng ví dụ mã được cung cấp bên dưới:

package com.groupdocsdev.classes;

import java.io.File;
import com.groupdocs.cloud.merger.client.*;
import com.groupdocs.cloud.merger.model.*;
import com.groupdocs.cloud.merger.model.requests.*;
import com.groupdocs.cloud.merger.api.*;
import com.groupdocs.cloud.merger.client.ApiException;

// Tải tệp lên Cloud Storage bằng Java
public class App {

	public static void main(String[] args) {

		FileApi apiInstance = new FileApi(configuration);
		try {
			File fileStream = new File("H:\\groupdocs-cloud-data\\input-sample-file.pdf");
			UploadFileRequest request = new UploadFileRequest("java-testing\\input-sample-file.pdf", fileStream, MyStorage);
			FilesUploadResult response = apiInstance.uploadFile(request);
			System.out.println("Expected response type is FilesUploadResult: " + response.getUploaded().size());
		} catch (ApiException e) {
			System.err.println("Exception while calling FileApi:");
			e.printStackTrace();
		}
	}
}

Do đó, tệp PDF đã tải lên sẽ có trong phần tệp trên trang tổng quan của bạn trên đám mây.

Trích xuất trang từ tệp PDF trong Java

Dưới đây là hướng dẫn từng bước và đoạn mã ví dụ về cách trích xuất các trang từ tệp PDF bằng GroupDocs.Merger Cloud SDK dành cho Java:

  • Đầu tiên, nhập các lớp cần thiết vào tệp Java của bạn.
  • Thứ hai, tạo một thể hiện của lớp PagesApi.
  • Thứ ba, tạo một thể hiện của lớp FileInfo.
  • Sau đó, đặt đường dẫn tệp đầu vào nguồn.
  • Bây giờ, hãy tạo một thể hiện của lớp ExtractOptions().
  • Sau đó, xác định các tùy chọn trích xuất bộ sưu tập setFileInfo, setOutputPath và setPages ở định dạng mảng.
  • Bây giờ, hãy tạo một thể hiện của lớp ExtractRequest() và truyền tham số ExtractOptions.
  • Cuối cùng, trích xuất các trang bằng cách gọi phương thức extract() của PagesApi và chuyển tham số ExtractRequest.

Đoạn mã sau cho biết cách tách các tệp PDF thành các trang riêng lẻ trong Java bằng API REST:

package com.groupdocsdev.classes;

import java.util.Arrays;
import com.groupdocs.cloud.merger.client.*;
import com.groupdocs.cloud.merger.model.*;
import com.groupdocs.cloud.merger.model.requests.*;
import com.groupdocs.cloud.merger.api.*;
import com.groupdocs.cloud.merger.client.ApiException;

// Cách trích xuất các trang PDF theo số trang Chính xác trong Java.
public class App {

	public static void main(String[] args) {

		// Tạo một phiên bản của API Trang.			
		PagesApi apiInstance = new PagesApi(configuration);

		try {

			// Chuẩn bị cài đặt
			FileInfo fileInfo = new FileInfo();			
			fileInfo.setFilePath("java-testing/input-sample-file.pdf");

			ExtractOptions options = new ExtractOptions();
			options.setFileInfo(fileInfo);
			options.setOutputPath("java-testing/output-sample-file.pdf");
			options.setPages(Arrays.asList(3, 5, 7));

			ExtractRequest request = new ExtractRequest(options);

			DocumentResult response = apiInstance.extract(request);
			
			// Nhận đường dẫn tệp đầu ra
			System.out.println("Output file path: " + response.getPath());
			
		} catch (ApiException e) {
			System.err.println("Exception while calling FileApi:");
			e.printStackTrace();
		}
		
	}
}

Tải xuống tệp

Mẫu mã trên sẽ lưu các trang PDF cụ thể trên đám mây. Bạn có thể tải xuống bằng mẫu mã sau:

package com.groupdocsdev.classes;

import java.io.File;
import com.groupdocs.cloud.merger.client.*;
import com.groupdocs.cloud.merger.model.requests.*;
import com.groupdocs.cloud.merger.api.*;
import com.groupdocs.cloud.merger.client.ApiException;

// Tải xuống tệp từ Bộ nhớ đám mây bằng Java
public class App {

	public static void main(String[] args) {

		FileApi apiInstance = new FileApi(configuration);
		try {

			DownloadFileRequest request = new DownloadFileRequest("java-testing\\multipage-documents\\output-sample-file.pdf", MyStorage, null);
			File response = apiInstance.downloadFile(request);
			System.out.println("Expected response type is downloadFile: " + response.length());
		} catch (ApiException e) {
			System.err.println("Exception while calling FileApi:");
			e.printStackTrace();
		}
	}
}

Cách trích xuất các trang từ PDF theo phạm vi trang bằng Java

Trong phần này, chúng tôi sẽ giới thiệu hướng dẫn từng bước và một đoạn mã ví dụ để lưu các trang đã chọn từ PDF bằng Java bằng cách áp dụng phạm vi trang:

  • Đầu tiên, nhập các lớp cần thiết vào tệp Java của bạn.
  • Thứ hai, tạo một thể hiện của lớp PagesApi.
  • Thứ ba, tạo một thể hiện của lớp FileInfo.
  • Sau đó, đặt đường dẫn tệp đầu vào nguồn.
  • Bây giờ, hãy tạo một thể hiện của lớp ExtractOptions().
  • Sau đó, xác định các tùy chọn giải nén setFileInfo, setOutputPath, setStartPageNumber và setEndPageNumber.
  • Tiếp theo, đặt tùy chọn trang setRangeMode thành EVENPAGES.
  • Bây giờ, hãy tạo một thể hiện của lớp ExtractRequest() và truyền tham số ExtractOptions.
  • Cuối cùng, trích xuất các trang bằng cách gọi phương thức extract() của PagesApi và chuyển tham số ExtractRequest.

Đoạn mã sau cho biết cách trích xuất các trang PDF bằng cách áp dụng phạm vi và chế độ trang trong Java:

package com.groupdocsdev.classes;

import java.util.Arrays;
import com.groupdocs.cloud.merger.client.*;
import com.groupdocs.cloud.merger.model.*;
import com.groupdocs.cloud.merger.model.requests.*;
import com.groupdocs.cloud.merger.api.*;
import com.groupdocs.cloud.merger.client.ApiException;

// Cách trích xuất các trang từ PDF theo phạm vi trang bằng Java.
public class App {

	public static void main(String[] args) {
		
		// Tạo một phiên bản của API Trang.		
		PagesApi apiInstance = new PagesApi(configuration);

		try {

			// Chuẩn bị cài đặt
			FileInfo fileInfo = new FileInfo();			
			fileInfo.setFilePath("java-testing/input-sample-file.pdf");

			ExtractOptions options = new ExtractOptions();
			options.setFileInfo(fileInfo);
			options.setOutputPath("java-testing/output-sample-file.pdf");
			options.setStartPageNumber(1);
			options.setEndPageNumber(10);
			options.setRangeMode(PageOptions.RangeModeEnum.EVENPAGES);

			ExtractRequest request = new ExtractRequest(options);

			DocumentResult response = apiInstance.extract(request);
			
			// Nhận đường dẫn tệp đầu ra
			System.out.println("Output file path: " + response.getPath());
			
		} catch (ApiException e) {
			System.err.println("Exception while calling FileApi:");
			e.printStackTrace();
		}
		
	}
}

Trình trích xuất trang PDF trực tuyến miễn phí

Làm cách nào để trích xuất các trang PDF miễn phí? Vui lòng dùng thử trình trích xuất trang PDF miễn phí để trích xuất miễn phí các trang cụ thể từ PDF. Trình trích xuất trang PDF trực tuyến này được phát triển bằng API Groupdocs.Merger Cloud đã đề cập ở trên.

Kết luận

GroupDocs.Merger Cloud SDK dành cho Java cung cấp một cách dễ dàng để trích xuất các trang PDF sang PDF mới trong Java. Sau đây là những gì bạn đã học được trong bài viết này:

  • cách tách file PDF thành nhiều trang theo số bằng Java;
  • lập trình tải lên và tải xuống tệp PDF bằng Java trên đám mây;
  • tách PDF thành các trang riêng lẻ trong Java bằng cách sử dụng phạm vi trang;
  • và trích xuất các trang từ PDF trực tuyến miễn phí bằng trình trích xuất trang PDF trực tuyến miễn phí.

Ngoài ra, chúng tôi cũng cung cấp phần Tham chiếu API cho phép bạn hình dung và giao tiếp trực tiếp với các API của chúng tôi thông qua trình duyệt. Mã nguồn hoàn chỉnh của Java SDK có sẵn miễn phí trên Github. Vui lòng kiểm tra GroupDocs.Merger Cloud SDK dành cho Java Ví dụ tại đây.

Ngoài ra, chúng tôi khuyên bạn nên làm theo Hướng dẫn bắt đầu của chúng tôi để biết các bước chi tiết và cách sử dụng API.

Cuối cùng, chúng tôi tiếp tục viết các bài đăng blog mới về các hoạt động tài liệu khác nhau bằng API REST. Vì vậy, xin vui lòng liên lạc để cập nhật thường xuyên.

Đặt một câu hỏi

Nếu bạn có bất kỳ câu hỏi nào về API trích xuất trang PDF, vui lòng hỏi chúng tôi trên Diễn đàn hỗ trợ miễn phí.

câu hỏi thường gặp

Làm cách nào để trích xuất các trang từ tệp PDF trong Java?

Bạn có thể trích xuất các trang từ tệp PDF bằng cách sử dụng GroupDocs.Merger Cloud SDK cho Java.

Có thể xuất một trang từ PDF trong Java không?

Có, bạn có thể trích xuất các trang PDF thành các tệp đơn lẻ theo cách lập trình trong Java bằng cách sử dụng GroupDocs.Merger Cloud SDK for Java.

Tôi có thể trích xuất các trang từ định dạng tệp nào bằng cách sử dụng GroupDocs.Merger Cloud SDK cho Java?

Ngoài các tệp PDF, GroupDocs.Merger Cloud SDK cho Java có thể trích xuất các trang từ Microsoft Word, Excel, PowerPoint, HTML và các định dạng tệp khác.

Xem thêm

Dưới đây là một số bài viết liên quan mà bạn có thể thấy hữu ích: