Преобразование диаграмм Excel в SVG с помощью Java

SVG (Scalable Vector Graphics) — это формат векторного изображения на основе XML, в котором изображение хранится в двумерном векторном графическом формате. Изображения SVG также можно редактировать в любом текстовом редакторе. Мы можем программно конвертировать диаграммы данных из книг Excel в файлы SVG. В этой статье мы узнаем, как конвертировать диаграммы Excel в SVG с помощью Java.

В этой статье должны быть раскрыты следующие темы:

Java API для преобразования диаграмм Excel в SVG

Для преобразования диаграмм из файлов XLSX в SVG мы будем использовать API Aspose.Cells for Java. Это позволяет программно выполнять функции автоматизации Excel без необходимости использования приложения Microsoft Excel. Пожалуйста, либо скачайте JAR API, либо просто добавьте следующую конфигурацию pom.xml в приложение Java на основе 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>

Преобразование диаграмм Excel в SVG на Java

Мы можем преобразовать диаграммы из рабочих листов Excel в SVG, выполнив следующие действия:

  1. Во-первых, загрузите файл Excel, используя класс Workbook.
  2. Затем перейдите к рабочему листу с диаграммой для преобразования из коллекции рабочих листов либо по его индексу (с нуля), либо по имени.
  3. Затем получите доступ к диаграмме для преобразования по ее индексу (с нуля) из коллекции диаграмм.
  4. После этого установите для параметра ImageOrPrintOptions.setSaveFormat значение SVG.
  5. Наконец, преобразуйте диаграмму в SVG с помощью метода Chart.toImage() и сохраните выходной файл.

В следующем примере кода показано, как преобразовать диаграмму из Excel в SVG с помощью Java.

// В этом примере кода показано, как преобразовать диаграмму из Excel в SVG.
// Загрузить файл Excel в объект рабочей книги
Workbook workbook = new Workbook("C:\\Files\\Cells\\Sample_Chart.xlsx");

// Доступ к первому рабочему листу
Worksheet worksheet = workbook.getWorksheets().get(0);

// Доступ к первой диаграмме внутри рабочего листа
Chart chart = worksheet.getCharts().get(0);

// Сохраните диаграмму в изображение в формате SVG.
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setSaveFormat(SaveFormat.SVG);

chart.toImage("C:\\Files\\Cells\\Sample_Chart_out.svg", options);
Преобразование диаграмм Excel в SVG на Java

Преобразование диаграмм Excel в SVG на Java.

Экспорт диаграммы и масштабирования SVG для соответствия области просмотра в Java

В XML атрибут viewBox определяет положение и размер содержимого окна просмотра SVG. Мы можем экспортировать любую диаграмму из рабочих листов Excel в SVG и настроить ее так, чтобы она соответствовала области просмотра, выполнив следующие шаги:

  1. Во-первых, загрузите файл Excel, используя класс Workbook.
  2. Затем перейдите к рабочему листу с диаграммой для преобразования из коллекции рабочих листов либо по его индексу (с нуля), либо по имени.
  3. Затем получите доступ к диаграмме для экспорта по ее индексу (начиная с нуля) из коллекции диаграмм.
  4. Установите для параметра ImageOrPrintOptions.setSaveFormat значение SVG.
  5. После этого установите для параметра ImageOrPrintOptions.setSVGFitToViewPort значение true.
  6. Наконец, вызовите метод Chart.toImage(), чтобы сохранить выходной файл.

В следующем примере кода показано, как экспортировать диаграмму из Excel в SVG, чтобы она поместилась в окне просмотра с помощью Java.

// В этом примере кода показано, как преобразовать диаграмму из Excel в SVG и настроить ее так, чтобы она соответствовала области просмотра.
// Загрузить файл Excel в объект рабочей книги
Workbook workbook = new Workbook("C:\\Files\\Cells\\Sample_Chart.xlsx");

// Доступ к первому рабочему листу
Worksheet worksheet = workbook.getWorksheets().get(0);

// Доступ к первой диаграмме внутри рабочего листа
Chart chart = worksheet.getCharts().get(0);

// Установите параметры изображения или печати
// с SVGFitToViewPort true
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setSaveFormat(SaveFormat.SVG);
options.setSVGFitToViewPort(true);

chart.toImage("C:\\Files\\Cells\\Sample_Chart_ViewPort_out.svg", options);
Экспорт диаграммы и масштабирования SVG для соответствия области просмотра в Java

Экспортируйте диаграмму и масштабируйте SVG по размеру области просмотра в Java.

Получить бесплатную лицензию

Попробуйте API без ознакомительных ограничений, запросив бесплатную временную лицензию.

Вывод

В этой статье мы узнали, как преобразовать диаграмму из Excel в SVG на Java. Мы также увидели, как программно экспортировать диаграмму Excel в SVG, чтобы она поместилась в окне просмотра. Кроме того, вы можете узнать больше об Aspose.Cells for Java API, используя документацию. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.

Смотрите также