Os arquivos do Excel geralmente são usados para trabalhar com dados numéricos. Além disso, os gráficos são renderizados para representar dados em forma pictórica. Usando Java, você pode converter um gráfico em uma imagem ou documento PDF. Aspose.Cells para API Java oferece muitos recursos para criar, editar ou manipular XLSX, XLS, XLSM, XLSB e outros suportados formatos de arquivo sem a necessidade de instalar o Microsoft Excel. Neste artigo, exploraremos o suporte para renderização de gráficos para imagem e formato de arquivo PDF em Java. Vamos descrever os recursos que abordaremos aqui:

Vamos aprender os detalhes para entender melhor o suporte à renderização de gráficos na API Java.

API Java para converter gráfico em imagem e PDF

Você pode converter ou renderizar um gráfico para diferentes formatos de imagem, incluindo JPG, PNG, TIFF ou BMP com Aspose.Cells para Java em algumas chamadas de método. Da mesma forma, você pode renderizar um gráfico para o formato PDF conforme suas necessidades. Em primeiro lugar, você precisa configurar o Aspose.Cells para a API Java em seu ambiente Java. Você pode instalá-lo facilmente baixando o arquivo JAR da seção de downloads ou usando o repositório a seguir e as configurações de dependência do Maven.

Repositório:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Dependência:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-cells</artifactId>
    <version>20.9</version>
</dependency>

Converter um gráfico em imagem usando Java

Depois de configurar a API com sucesso, você pode exportar ou converter um gráfico para qualquer formato de imagem, incluindo JPG, PNG, TIFF, BMP, SVG, WMP etc. Neste exemplo, vamos considerar salvar o gráfico como uma imagem PNG. Você precisa seguir as seguintes etapas para conversão de gráfico em imagem em Java:

  1. Carregar arquivo XLS/XLSX de entrada
  2. Acesse a Planilha e Chart
  3. Inicialize ImageOrPrintOptions para definir a qualidade e outras propriedades
  4. Defina o tipo de imagem e converta o gráfico em uma imagem em Java

O snippet de código abaixo mostra como converter um gráfico em imagem JPG, PNG, TIFF, BMP, SVG ou WMP usando Java:

// Carregar arquivo XLSX de entrada
Workbook workbook = new Workbook(dataDir + "SampleExcel.xlsx");
        
// Acesse a planilha necessária        
Worksheet worksheet = workbook.getWorksheets().get(0);

// Acesse gráfico específico
Chart chart = worksheet.getCharts().get(1);

// Crie uma instância de ImageOrPrintOptions e defina algumas propriedades
ImageOrPrintOptions options = new ImageOrPrintOptions();
options.setVerticalResolution(300);
options.setHorizontalResolution(300);
options.setQuality(100);

// Defina o tipo de imagem para o formato de saída
options.setImageType(ImageType.PNG);

// Renderize o gráfico em imagem        
chart.toImage(dataDir + "chart.png", options);

Vamos dar uma olhada na captura de tela da imagem do gráfico gerada por este código:

Converter gráfico em imagem PDF Java

Converter todos os gráficos em planilhas para imagens usando Java

Já aprendemos como renderizar um gráfico único para uma imagem. É um caso de uso básico que podemos aprimorar e cobrir o cenário em que você deseja converter todos os gráficos em todas as planilhas para as respectivas imagens. Você precisa seguir as etapas abaixo para converter todos os gráficos em uma pasta de trabalho em imagens:

  1. Carregar arquivo XLS/XLSX de origem
  2. Iterar em cada Planilha
  3. Iterar através de cada gráfico em cada planilha
  4. Especifique propriedades diferentes com ImageOrPrintOptions
  5. Salvar imagem de saída do Chart

O snippet de código a seguir mostra como converter gráficos em imagens usando Java:

// Carregar arquivo XLSX de entrada
Workbook workbook = new Workbook(dataDir + "SampleExcel.xlsx");

for (int sheet = 0 ; sheet < workbook.getWorksheets().getCount() ; sheet++)
{
    // Acesse a planilha necessária        
    Worksheet worksheet = workbook.getWorksheets().get(sheet);

    for (int i =0 ; i<worksheet.getCharts().getCount() ; i++)
    {
        // Acesse gráfico específico
        com.aspose.cells.Chart chart = worksheet.getCharts().get(i);

        // Crie uma instância de ImageOrPrintOptions e defina algumas propriedades
        ImageOrPrintOptions options = new ImageOrPrintOptions();
        options.setVerticalResolution(300);
        options.setHorizontalResolution(300);
        options.setQuality(100);

        // Defina o tipo de imagem para o formato de saída
        options.setImageType(com.aspose.cells.ImageType.PNG);

        // Renderize o gráfico em imagem        
        chart.toImage(dataDir + "chart_" + (i+1) + "_" + worksheet.getName() + ".png", options);
    }
}

Converter um gráfico em PDF usando Java

O formato de arquivo PDF é famoso por sua compatibilidade com quase todos os sistemas operacionais. Às vezes, pode ser necessário converter um gráfico da pasta de trabalho do Excel em um arquivo PDF. Embora você possa converter a imagem renderizada anteriormente em PDF usando APIs Aspose, isso seria uma abordagem de duas etapas. Considerando que, Aspose.Cells para API Java pode renderizar diretamente o gráfico como um documento PDF. Você precisa seguir os passos abaixo para realizar a conversão:

  1. Carregar arquivo XLSX de entrada
  2. Acesso necessário Pasta de trabalho
  3. Certifique-se de que haja pelo menos um Chart
  4. Renderizar gráfico específico para PDF

O snippet de código abaixo explica como converter um gráfico em PDF usando Java:

// Carregar arquivo XLSX de entrada
Workbook workbook = new Workbook(dataDir + "SampleExcel.xlsx");

// Acesse a planilha necessária
Worksheet worksheet = workbook.getWorksheets().get(0);

// Verifique se há pelo menos um gráfico na pasta de trabalho
if(worksheet.getCharts().getCount() > 0)
{
    // Acesse gráfico específico
    com.aspose.cells.Chart chart = worksheet.getCharts().get(1);

    // Renderize o gráfico para PDF
    chart.toPdf(dataDir + "FirstChart.pdf");
}

Conclusão

Neste artigo, aprendemos como converter gráficos em arquivos do Excel para JPG, PNG, BMP, WMF ou PDF usando Java. A API oferece muitas propriedades e métodos para controlar a renderização de imagens e documentos PDF. Cobrimos alguns dos possíveis casos de uso para conversão de gráficos, caso você queira explorar mais os recursos de renderização, sinta-se à vontade para visitar as referências da API, a documentação do produto ou o Fórum de suporte gratuito se precisar de ajuda.

Veja também