Converter gráficos complexos em 3D de uma pasta de trabalho do Excel para um arquivo PDF portátil é uma necessidade frequente para relatórios e compartilhamento de dados visuais. Aspose.Cells Cloud SDK for Java fornece uma poderosa biblioteca baseada em nuvem que simplifica essa tarefa para desenvolvedores Java. Neste guia, percorremos todo o processo de conversão de 3D para PDF em Java, desde a preparação do seu ambiente até a recuperação do documento final. Você verá um detalhado passo a passo do código, um exemplo completo e comandos cURL equivalentes para integração com a API REST.

Configurando o SDK Aspose.Cells Cloud para Java

Antes de começar, certifique‑se de que você tem o seguinte:

  • Java 17 ou mais recente instalado.
  • Maven ou Gradle para gerenciamento de dependências.
  • Uma conta Aspose Cloud com Client Id e Client Secret.
  • Acesso à internet para chamadas de nuvem.

Adicione o SDK ao seu projeto com a dependência Maven mostrada abaixo e faça o download do JAR mais recente na página oficial de download.

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

Você também pode obter a biblioteca diretamente do URL de download.

Configure o cliente com suas credenciais. Este trecho foi retirado diretamente do exemplo completo.

Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");
// Optional: config.setBasePath("https://api.aspose.cloud"); // default

Com a configuração em vigor, você está pronto para iniciar o fluxo de trabalho de conversão.

Conversão de 3D para PDF em Java - Guia Passo a Passo

Passo 1: Carregar a Pasta de Trabalho do Excel para o Armazenamento na Nuvem

Primeiro, faça o upload do arquivo XLSX que contém os gráficos 3D. O FilesApi lida com o upload.

FilesUploadResult uploadResult = filesApi.uploadFile("", new File(localInputPath));
if (uploadResult == null || uploadResult.getUploaded().isEmpty()) {
    System.err.println("Upload failed.");
    return;
}

Etapa 2: Preparar opções de salvamento de PDF

Ajuste fino da saída PDF habilitando o cache de fontes, a compressão de imagens e a otimização de memória. Essas opções ajudam a manter o tamanho do PDF baixo, preservando a qualidade visual 3D.

PdfSaveOptions pdfOptions = new PdfSaveOptions();
pdfOptions.setCacheFont(true);
pdfOptions.setCompressImages(true);
pdfOptions.setImageQuality(80);
pdfOptions.setEnableMemoryOptimization(true);

Etapa 3: Converter a Pasta de Trabalho para PDF

Chame o método postWorkbookSaveAs da CellsApi para realizar a conversão. A referência da API para este método está disponível na Aspose.Cells API Reference.

WorkbookResponse convertResponse = cellsApi.postWorkbookSaveAs(
        remoteInputName,          // source workbook name
        "pdf",                    // target format
        remoteOutputName,         // output path in cloud storage
        pdfOptions,               // save options
        "",                       // folder (root)
        null);                    // storage (default)

Etapa 4: Baixar o PDF resultante

Após uma conversão bem-sucedida, baixe os bytes do PDF e escreva‑os em um arquivo local.

byte[] pdfBytes = filesApi.downloadFile(remoteOutputName);
try (FileOutputStream fos = new FileOutputStream(new File(localOutputPath))) {
    fos.write(pdfBytes);
}
System.out.println("Conversion completed successfully. PDF saved to " + localOutputPath);

Passo 5: Limpeza opcional

Remova os arquivos temporários do armazenamento em nuvem para manter sua conta organizada.

filesApi.deleteFile(remoteInputName, null, null);
filesApi.deleteFile(remoteOutputName, null, null);

Implementação Java Completa para Conversão de 3D para PDF - Exemplo de Código Completo

O exemplo a seguir demonstra a conversão de ponta a ponta de uma pasta de trabalho Excel 3D para PDF usando o Aspose.Cells Cloud SDK for Java.

import com.aspose.cloud.cells.api.CellsApi;
import com.aspose.cloud.cells.api.FilesApi;
import com.aspose.cloud.cells.client.ApiException;
import com.aspose.cloud.cells.client.Configuration;
import com.aspose.cloud.cells.model.PdfSaveOptions;
import com.aspose.cloud.cells.model.FilesUploadResult;
import com.aspose.cloud.cells.model.WorkbookResponse;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;

public class AsposeCells3DToPdfExample {
    public static void main(String[] args) {
        // -------------------- Configuration --------------------
        Configuration config = new Configuration();
        config.setClientId("YOUR_CLIENT_ID");
        config.setClientSecret("YOUR_CLIENT_SECRET");
        // Optional: config.setBasePath("https://api.aspose.cloud"); // default

// -------------------- API Instances --------------------
        CellsApi cellsApi = new CellsApi(config);
        FilesApi filesApi = new FilesApi(config);

// -------------------- Local & Remote Paths --------------------
        String localInputPath = "input.xlsx";      // Excel file containing 3D charts
        String remoteInputName = "input.xlsx";     // Name used in cloud storage
        String remoteOutputName = "output.pdf";    // Desired PDF name in cloud storage
        String localOutputPath = "output.pdf";     // Where to save the downloaded PDF

try {
            // -------------------- Upload Excel to Cloud --------------------
            FilesUploadResult uploadResult = filesApi.uploadFile("", new File(localInputPath));
            if (uploadResult == null || uploadResult.getUploaded().isEmpty()) {
                System.err.println("Upload failed.");
                return;
            }

// -------------------- Prepare PDF Save Options (Performance) --------------------
            PdfSaveOptions pdfOptions = new PdfSaveOptions();
            pdfOptions.setCacheFont(true);                     // Cache fonts for faster processing
            pdfOptions.setCompressImages(true);               // Compress images to reduce size
            pdfOptions.setImageQuality(80);                   // Balance quality and size
            pdfOptions.setEnableMemoryOptimization(true);     // Reduce memory footprint

// -------------------- Convert Workbook to PDF --------------------
            WorkbookResponse convertResponse = cellsApi.postWorkbookSaveAs(
                    remoteInputName,          // source workbook name
                    "pdf",                    // target format
                    remoteOutputName,         // output path in cloud storage
                    pdfOptions,               // save options
                    "",                       // folder (root)
                    null                      // storage (default)
            );

if (convertResponse == null || convertResponse.getCode() != 200) {
                System.err.println("Conversion failed.");
                return;
            }

// -------------------- Download Resulting PDF --------------------
            byte[] pdfBytes = filesApi.downloadFile(remoteOutputName);
            try (FileOutputStream fos = new FileOutputStream(new File(localOutputPath))) {
                fos.write(pdfBytes);
            }

System.out.println("Conversion completed successfully. PDF saved to " + localOutputPath);
        } catch (ApiException | IOException e) {
            e.printStackTrace();
        } finally {
            // -------------------- Optional Cleanup --------------------
            try {
                filesApi.deleteFile(remoteInputName, null, null);
                filesApi.deleteFile(remoteOutputName, null, null);
            } catch (ApiException ignored) {
            }
        }
    }
}

Nota: Este exemplo de código demonstra a funcionalidade principal. Antes de usá‑lo em seu projeto, certifique‑se de atualizar os caminhos dos arquivos (input.xlsx, output.pdf, etc.) para corresponderem às suas localizações reais, verifique se todas as dependências necessárias estão devidamente instaladas e teste minuciosamente em seu ambiente de desenvolvimento. Se encontrar algum problema, consulte a documentação oficial ou entre em contato com a equipe de suporte para obter assistência.

Conversão de API REST via cURL usando Aspose.Cells Cloud

Se você preferir uma abordagem independente de linguagem, a mesma conversão pode ser realizada com comandos cURL simples contra a Aspose.Cells Cloud REST API.

1. Autenticar e obter um token de acesso

curl -X POST "https://api.aspose.cloud/connect/token" \
     -H "Content-Type: application/x-www-form-urlencoded" \
     -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"

A resposta contém um access_token que você usará nas chamadas subsequentes.

2. Carregue o arquivo XLSX de origem

curl -X PUT "https://api.aspose.cloud/v3.0/cells/storage/file/input.xlsx" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/octet-stream" \
     --data-binary "@input.xlsx"

3. Converta a pasta de trabalho para PDF

curl -X POST "https://api.aspose.cloud/v3.0/cells/input.xlsx/saveAs/pdf?outputPath=output.pdf" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "CacheFont": true,
           "CompressImages": true,
           "ImageQuality": 80,
           "EnableMemoryOptimization": true
         }'

4. Baixe o PDF gerado

curl -X GET "https://api.aspose.cloud/v3.0/cells/storage/file/output.pdf" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o output.pdf

Esses comandos executam o mesmo fluxo de trabalho de conversão de 3D para PDF em Java sem escrever nenhum código Java. Para mais detalhes, veja a documentação oficial da API.

Conclusão

Seguindo as etapas acima, você pode converter de forma confiável pastas de trabalho do Excel 3D em arquivos PDF de alta qualidade usando Aspose.Cells Cloud SDK for Java. A biblioteca cuida do processamento pesado de renderização de diagramas 3D, enquanto as opções de salvamento em PDF permitem controlar o tamanho e o desempenho. Lembre‑se de obter uma licença adequada para uso em produção; detalhes de preços estão disponíveis na página do produto e uma licença temporária pode ser obtida na página de licença temporária. Com esse conhecimento, você está pronto para integrar a conversão de 3D para PDF em suas aplicações Java e entregar relatórios refinados aos usuários finais.

FAQs

  • Como implemento a conversão de 3D para PDF em Java com Aspose.Cells?
    Use o SDK para enviar seu arquivo XLSX, configure PdfSaveOptions, chame postWorkbookSaveAs e faça o download do PDF resultante. O exemplo de código completo neste artigo mostra a sequência exata.

  • Existe uma maneira de realizar a conversão de PDF de Diagrama 3D em Java sem escrever código?
    Sim, a API REST e os comandos cURL fornecidos permitem alcançar o mesmo resultado a partir de qualquer plataforma que possa fazer solicitações HTTP.

  • Qual é a diferença entre a conversão de PDF de visualização 3D e a conversão padrão de Excel para PDF?
    Visualizações 3D requerem renderização adicional dos objetos de gráfico, que o SDK trata automaticamente. A conversão padrão pode pular essas etapas de renderização 3D, resultando em gráficos ausentes.

  • Posso usar o mesmo fluxo de trabalho para conversão de Excel para PDF em Java de pastas de trabalho não‑3D?
    Absolutamente. As mesmas chamadas de API funcionam para qualquer arquivo Excel; basta omitir ou ajustar as opções específicas de 3D se não forem necessárias.

Leia Mais