Chuyển đổi bảng tính Excel sang PDF trong Java

Khi chúng tôi muốn chia sẻ dữ liệu trong các trang tính không yêu cầu chỉnh sửa, chúng tôi thường chuyển đổi sổ làm việc Excel hoặc trang tính cụ thể đó sang định dạng PDF. Trong bài viết này, chúng ta sẽ tìm hiểu 4 cách khác nhau để chuyển đổi bảng tính Excel sang định dạng PDF trong Java bằng cách sử dụng API chuyển đổi tài liệu.

Mỗi cách tiếp cận chuyển đổi có thể được áp dụng với một chút thay đổi trong mã trong khi tải bảng tính hoặc với một số điều chỉnh trong các tùy chọn chuyển đổi của định dạng PDF. Một số cách có thể để chuyển đổi bảng tính trong bài viết như sau.

API Java để chuyển đổi tệp Excel sang PDF

GroupDocs.Conversion cung cấp API Java cho phép nhiều định dạng tệp Excel bao gồm XLS, XLSX chuyển đổi thành định dạng PDF. Trong bài viết này, chúng tôi sẽ sử dụng GroupDocs.Conversion for Java. Ngoài bảng tính, API hỗ trợ chuyển đổi tài liệu soạn thảo văn bản, bản trình bày, sách điện tử, hình ảnh, v.v. được đề cập trong tài liệu.

Bạn có thể tải xuống tệp JAR từ phần tải xuống hoặc sử dụng cấu hình phụ thuộc và kho lưu trữ mới nhất Maven trong các ứng dụng Java của mình.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-conversion</artifactId>
        <version>21.10</version> 
</dependency>

Chuyển đổi tất cả các trang tính của tệp Excel sang PDF - Java

Cách đơn giản nhất là chuyển đổi tất cả các sheet sang định dạng PDF. Các bước sau đây chuyển đổi sổ làm việc hoàn chỉnh (tất cả các trang tính) sang định dạng PDF trong Java.

  • Tải sổ làm việc Excel (XLS, XLSX) bằng Converter.
  • Chuyển đổi nó sang định dạng PDF bằng bất kỳ phương thức convert() đã quá tải nào bằng PdfConvertOptions.

Sau đây là 2 dòng mã nguồn Java chuyển đổi sổ làm việc Excel hoàn chỉnh sang PDF.

/*
 * Chuyển đổi tất cả các trang tính Excel sang định dạng PDF trong Java
 */
Converter converter = new Converter("path/spreadsheet.xlsx");
converter.convert("path/all-sheets-converted.pdf", new PdfConvertOptions());
Chuyển đổi PDF từ dữ liệu Excel

Chuyển đổi Trang tính Excel liên tiếp sang PDF - Java

Nếu bạn quan tâm đến việc trích xuất tập hợp con của bảng tính theo trình tự, bạn có thể dễ dàng thực hiện việc đó bằng cách cung cấp số trang tính bắt đầu và số trang tính liên tiếp. Sau đây là các bước để chuyển đổi bất kỳ chuỗi con nào của (các) bảng tính Excel sang định dạng PDF trong Java.

  • Tải bảng tính bằng Converter.
  • Xác định các tùy chọn chuyển đổi PDF bằng PdfConvertOptions.
  • Đặt số tờ bắt đầu và số tờ tiếp theo.
  • Chuyển đổi các trang tính đã chọn thành PDF theo cài đặt bằng phương pháp convert().

Sau đây là đoạn mã Java chuyển đổi hai trang tính đầu tiên thành PDF. (Tờ số 1 và 2)

/*
 * Chuyển đổi chuỗi các trang tính Excel sang định dạng PDF trong Java
 */
Converter converter = new Converter("path/spreadsheet.xlsx");

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPageNumber(1);
convertOptions.setPagesCount(2);

converter.convert("path/sequential-conversion.pdf", convertOptions);

Chuyển đổi trang tính Excel sang PDF cụ thể - Java

Nếu bạn đang nghĩ đến việc chuyển đổi trang tính ngẫu nhiên (chẳng hạn như số trang tính 1, 2, 4, 7, …), bạn chỉ cần cung cấp số trang tính chính xác dưới dạng danh sách trong khi chuyển đổi. Sau đây là các bước để chuyển đổi bất kỳ danh sách số trang cụ thể nào thành định dạng PDF trong Java.

  • Tải tệp Excel bằng Converter.
  • Cung cấp số trang tính chính xác dưới dạng danh sách bằng cách sử dụng PdfConvertOptions.
  • Chuyển đổi các trang tính được liệt kê thành định dạng PDF bằng phương pháp convert().

Đoạn mã sau chuyển đổi tờ số 1 và 3 sang định dạng PDF.

/*
 * Chuyển đổi danh sách các trang tính Excel được chỉ định sang định dạng PDF trong Java
 */
Converter converter = new Converter("path/spreadsheet.xlsx");

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPages(Arrays.asList(1,3));

converter.convert("path/specific-sheets-conversion.pdf", convertOptions);

Chuyển đổi Phạm vi Ô của Trang tính Excel sang PDF - Java

Đây là cách bất thường để chuyển đổi bất kỳ phân đoạn nào của (các) bảng tính. Chúng ta có thể chuyển đổi bất kỳ phạm vi ô nào của (các) trang tính Excel theo cách gần như tương tự như các phương pháp khác đã thảo luận ở trên. Sau đây là các bước để chuyển đổi phạm vi ô của (các) trang sổ làm việc sang định dạng PDF trong Java.

  • Xác định phạm vi ô của các trang tính.
  • Tải tệp bảng tính.
  • Chọn các trang tính bằng cách cung cấp phạm vi trang tính liên tiếp hoặc số trang tính chính xác.
  • Chuyển đổi các trang tính sang định dạng PDF theo cài đặt.

Đoạn mã sau chuyển đổi phạm vi ô (A1:C20) của trang tính số 1 sang định dạng PDF trong Java.

/*
 * Chuyển đổi Phạm vi ô được chỉ định của các trang tính Excel được chỉ định sang định dạng PDF trong Java
 */
// Chuẩn bị các tùy chọn Tải và Phạm vi cho tệp XLSX nguồn
SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setConvertRange("A1:C20");
Converter converter = new Converter("path/spreadsheet.xlsx", loadOptions);

PdfConvertOptions convertOptions = new PdfConvertOptions();
convertOptions.setPageNumber(1);
convertOptions.setPagesCount(1);

converter.convert("path/convert-cell-range.pdf", convertOptions);

Nhận giấy phép API miễn phí

Bạn có thể nhận giấy phép tạm thời miễn phí để sử dụng API mà không bị giới hạn đánh giá.

Sự kết luận

Hãy tóm tắt những gì chúng ta đã học ngày hôm nay. Chúng ta đã học bốn cách khác nhau để chuyển đổi bảng tính Excel sang định dạng PDF trong Java bằng cách sử dụng GroupDocs.Conversion. Ban đầu, chúng tôi chuyển đổi sổ làm việc hoàn chỉnh sang định dạng PDF, sau đó là các trang tính liên tiếp. Tiếp theo, nhiều trang tính đã được thay đổi thành PDF bằng cách liệt kê số trang tính chính xác của chúng. Cuối cùng, chúng tôi đã thu được tệp PDF từ phạm vi ô đã chọn của (các) trang tính đã chọn.

Tìm hiểu thêm về API GroupDocs.Conversion từ tài liệu. Nếu có thắc mắc, hãy liên hệ với chúng tôi qua diễn đàn.

Xem thêm