Chuyển đổi biểu đồ Excel sang SVG bằng Java

SVG (Đồ họa vectơ có thể mở rộng) là định dạng hình ảnh vector dựa trên XML lưu trữ hình ảnh ở định dạng đồ họa vector hai chiều. Hình ảnh SVG cũng có thể được chỉnh sửa bằng bất kỳ trình soạn thảo văn bản nào. Chúng ta có thể chuyển đổi biểu đồ dữ liệu từ sổ làm việc Excel sang tệp SVG theo chương trình. Trong bài viết này, chúng ta sẽ tìm hiểu cách chuyển đổi biểu đồ Excel sang SVG bằng Java.

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

API Java để chuyển đổi biểu đồ Excel sang SVG

Để chuyển đổi biểu đồ từ tệp XLSX sang SVG, chúng tôi sẽ sử dụng API Aspose.Cells for Java. Nó cho phép thực hiện các tính năng tự động hóa Excel theo chương trình mà không cần ứng dụng Microsoft Excel. Vui lòng tải xuống JAR của API hoặc chỉ cần thêm cấu hình pom.xml sau vào ứng dụng Java dựa trên 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-cells</artifactId>
    <version>21.12</version>
</dependency>

Chuyển đổi biểu đồ Excel sang SVG trong Java

Chúng ta có thể chuyển đổi biểu đồ từ bảng tính Excel sang SVG bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tải tệp Excel bằng lớp Workbook.
  2. Tiếp theo, truy cập trang tính có biểu đồ để chuyển đổi từ bộ sưu tập trang tính, theo chỉ mục của nó (dựa trên số 0) hoặc theo tên.
  3. Sau đó, truy cập vào biểu đồ để chuyển đổi theo chỉ mục của nó (dựa trên số 0) từ bộ sưu tập biểu đồ.
  4. Sau đó, đặt ImageOrPrintOptions.setSaveFormat thành SVG.
  5. Cuối cùng, chuyển đổi biểu đồ sang SVG bằng phương thức Chart.toImage() và lưu tệp đầu ra.

Mã mẫu sau đây cho biết cách chuyển đổi biểu đồ từ Excel sang SVG bằng Java.

// Ví dụ mã này trình bày cách chuyển đổi biểu đồ từ Excel sang SVG
// Tải tệp Excel vào đối tượng sổ làm việc
Workbook workbook = new Workbook("C:\\Files\\Cells\\Sample_Chart.xlsx");

// Truy cập bảng tính đầu tiên
Worksheet worksheet = workbook.getWorksheets().get(0);

// Truy cập biểu đồ đầu tiên bên trong bảng tính
Chart chart = worksheet.getCharts().get(0);

// Lưu biểu đồ thành hình ảnh ở định dạng SVG
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setSaveFormat(SaveFormat.SVG);

chart.toImage("C:\\Files\\Cells\\Sample_Chart_out.svg", options);
Chuyển đổi biểu đồ Excel sang SVG trong Java

Chuyển đổi biểu đồ Excel sang SVG trong Java.

Xuất biểu đồ và tỷ lệ SVG sang Fit Viewport trong Java

Trong XML, thuộc tính viewBox xác định vị trí và kích thước cho nội dung của khung nhìn SVG. Chúng ta có thể xuất bất kỳ biểu đồ nào từ bảng tính Excel sang SVG và đặt biểu đồ đó vừa với khung nhìn bằng cách thực hiện theo các bước được đưa ra bên dưới:

  1. Đầu tiên, tải tệp Excel bằng lớp Workbook.
  2. Tiếp theo, truy cập trang tính có biểu đồ để chuyển đổi từ bộ sưu tập trang tính, theo chỉ mục của nó (dựa trên số 0) hoặc theo tên.
  3. Sau đó, truy cập biểu đồ để xuất theo chỉ mục của nó (dựa trên số 0) từ bộ sưu tập biểu đồ.
  4. Đặt ImageOrPrintOptions.setSaveFormat thành SVG.
  5. Sau đó, đặt ImageOrPrintOptions.setSVGFitToViewPort thành true.
  6. Cuối cùng, gọi phương thức Chart.toImage() để lưu tệp đầu ra.

Mã mẫu sau đây cho biết cách xuất biểu đồ từ Excel sang SVG để vừa với khung nhìn bằng Java.

// Ví dụ mã này trình bày cách chuyển đổi biểu đồ từ Excel sang SVG và đặt nó vừa với khung nhìn
// Tải tệp Excel vào đối tượng sổ làm việc
Workbook workbook = new Workbook("C:\\Files\\Cells\\Sample_Chart.xlsx");

// Truy cập bảng tính đầu tiên
Worksheet worksheet = workbook.getWorksheets().get(0);

// Truy cập biểu đồ đầu tiên bên trong bảng tính
Chart chart = worksheet.getCharts().get(0);

// Đặt tùy chọn hình ảnh hoặc in
// với SVGFitToViewPort đúng
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setSaveFormat(SaveFormat.SVG);
options.setSVGFitToViewPort(true);

chart.toImage("C:\\Files\\Cells\\Sample_Chart_ViewPort_out.svg", options);
Xuất biểu đồ và tỷ lệ SVG sang Fit Viewport trong Java

Xuất biểu đồ và tỷ lệ SVG sang Fit Viewport trong Java.

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

Vui lòng dùng thử API không có giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời miễn phí.

Phần kết luận

Trong bài viết này, chúng ta đã tìm hiểu cách chuyển đổi biểu đồ từ Excel sang SVG trong Java. Chúng ta cũng đã thấy cách xuất biểu đồ Excel sang SVG để vừa với khung nhìn theo chương trình. Ngoài ra, bạn có thể tìm hiểu thêm về Aspose.Cells for Java API bằng tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm