La conversione da XLSX a JPG in Java è una necessità comune quando si desidera visualizzare i dati del foglio di calcolo come immagini. GroupDocs.Conversion Cloud SDK for Java offre una semplice libreria basata su REST che consente di renderizzare i fogli di lavoro Excel direttamente in file JPG. Questa guida ti accompagna nella configurazione necessaria, mostra un esempio di codice completo, dimostra l’elaborazione asincrona con cURL e fornisce consigli sulle prestazioni per gestire cartelle di lavoro di grandi dimensioni.

Passaggi per la conversione da XLSX a JPG in Java

  1. Aggiungi dipendenza Maven: Includi l’SDK nel tuo pom.xml in modo che la libreria sia disponibile al momento della compilazione.
<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-conversion-cloud</artifactId>
    <version>23.12</version>
</dependency>
  1. Inizializzare il client di conversione: Creare un’istanza di ConversionApi con le credenziali del client.
import com.groupdocs.conversion.cloud.api.ConversionApi;
import com.groupdocs.conversion.cloud.client.ApiClient;
import com.groupdocs.conversion.cloud.configuration.Configuration;

Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");

ConversionApi conversionApi = new ConversionApi(new ApiClient(config));
  1. Configura le opzioni di conversione: Imposta il formato di output su JPG, scegli una risoluzione e abilita l’elaborazione asincrona se desiderato.
import com.groupdocs.conversion.cloud.model.requests.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertOptions;
import com.groupdocs.conversion.cloud.model.JpgConvertOptions;

JpgConvertOptions jpgOptions = new JpgConvertOptions();
jpgOptions.setResolution(300);          // 300 DPI for high quality
jpgOptions.setQuality(90);              // JPEG quality 0‑100
jpgOptions.setAsync(true);              // Enable async conversion

ConvertOptions options = new ConvertOptions();
options.setOutputFormat("JPG");
options.setJpgOptions(jpgOptions);
  1. Esegui la conversione: Crea un ConvertDocumentRequest con il file XLSX di origine e le opzioni, quindi chiama l’API.
import java.io.File;

File sourceFile = new File("sample.xlsx");
ConvertDocumentRequest request = new ConvertDocumentRequest(sourceFile, options);
String jobId = conversionApi.convertDocument(request);
System.out.println("Conversion started, job ID: " + jobId);
  1. Scarica il risultato: Interroga lo stato del lavoro finché non è completato, quindi scarica ogni JPG generato.
import com.groupdocs.conversion.cloud.model.JobStatus;
import com.groupdocs.conversion.cloud.model.responses.JobStatusResponse;

while (true) {
    JobStatusResponse statusResponse = conversionApi.getJobStatus(jobId);
    JobStatus status = statusResponse.getStatus();
    if (status == JobStatus.COMPLETED) break;
    Thread.sleep(2000); // wait 2 seconds before next poll
}
conversionApi.downloadResult(jobId, new File("output/"));
System.out.println("JPG files saved to output folder.");

Per ulteriori dettagli sugli oggetti di richiesta, consulta il riferimento API.

Generare JPG da XLSX in Java - Esempio di codice completo

Questo esempio dimostra una conversione completa end‑to‑end che carica una cartella di lavoro XLSX, converte ogni foglio di lavoro in un JPG separato e salva le immagini localmente.

package com.example.conversion;

import com.groupdocs.conversion.cloud.api.ConversionApi;
import com.groupdocs.conversion.cloud.client.ApiClient;
import com.groupdocs.conversion.cloud.configuration.Configuration;
import com.groupdocs.conversion.cloud.model.requests.ConvertDocumentRequest;
import com.groupdocs.conversion.cloud.model.ConvertOptions;
import com.groupdocs.conversion.cloud.model.JpgConvertOptions;
import com.groupdocs.conversion.cloud.model.responses.JobStatusResponse;
import com.groupdocs.conversion.cloud.model.JobStatus;

import java.io.File;

public class XlsxToJpgDemo {
    public static void main(String[] args) throws Exception {
        // 1. Configure client
        Configuration config = new Configuration();
        config.setClientId("YOUR_CLIENT_ID");
        config.setClientSecret("YOUR_CLIENT_SECRET");
        ConversionApi api = new ConversionApi(new ApiClient(config));

// 2. Prepare conversion options
        JpgConvertOptions jpgOpts = new JpgConvertOptions();
        jpgOpts.setResolution(300);
        jpgOpts.setQuality(90);
        jpgOpts.setAsync(true); // async conversion

ConvertOptions convOpts = new ConvertOptions();
        convOpts.setOutputFormat("JPG");
        convOpts.setJpgOptions(jpgOpts);

// 3. Create request
        File source = new File("input/sample.xlsx");
        ConvertDocumentRequest request = new ConvertDocumentRequest(source, convOpts);

// 4. Start conversion
        String jobId = api.convertDocument(request);
        System.out.println("Job started, ID: " + jobId);

// 5. Wait for completion
        while (true) {
            JobStatusResponse statusResp = api.getJobStatus(jobId);
            if (statusResp.getStatus() == JobStatus.COMPLETED) break;
            Thread.sleep(2000);
        }

// 6. Download JPG files
        api.downloadResult(jobId, new File("output/"));
        System.out.println("Conversion finished. JPG files are in the output folder.");
    }
}

Nota: Questo esempio di codice dimostra la funzionalità principale. Prima di usarlo nel tuo progetto, assicurati di aggiornare i percorsi dei file (input/sample.xlsx, output/) per corrispondere alle tue posizioni effettive, verifica che tutte le dipendenze richieste siano correttamente installate e testa accuratamente nel tuo ambiente di sviluppo. Se riscontri problemi, consulta la documentazione ufficiale o contatta il team di supporto per assistenza.

Converti Excel in immagine usando cURL

I seguenti comandi cURL illustrano come eseguire la stessa conversione da XLSX a JPG utilizzando l’API REST. Sostituisci i valori segnaposto con le tue credenziali e i nomi dei file reali.

  1. Ottieni token di accesso
curl -X POST "https://api.groupdocs.cloud/v1.0/oauth/token" \
     -H "Content-Type: application/json" \
     -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
  1. Carica il file XLSX
curl -X POST "https://api.groupdocs.cloud/v1.0/storage/file/upload" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -F "file=@sample.xlsx"
  1. Avvia conversione asincrona
curl -X POST "https://api.groupdocs.cloud/v1.0/conversion/convert" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{
           "sourceFilePath": "sample.xlsx",
           "outputFormat": "JPG",
           "options": {
               "resolution": 300,
               "quality": 90,
               "async": true
           }
         }'
  1. Verifica lo stato del lavoro (sostituisci JOB_ID con il valore restituito dal passaggio precedente)
curl -X GET "https://api.groupdocs.cloud/v1.0/conversion/jobs/JOB_ID/status" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
  1. Scarica i file JPG risultanti
curl -X GET "https://api.groupdocs.cloud/v1.0/conversion/jobs/JOB_ID/result" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o output.zip

Per un elenco completo dei parametri, consulta la documentazione API ufficiale.

Installazione e configurazione di GroupDocs.Conversion Cloud SDK per Java

Aggiungi l’SDK al tuo progetto con Maven, quindi configura le credenziali del client.

# Add the dependency (already shown in the Steps section)
mvn install com.groupdocs:groupdocs-conversion-cloud
// Example configuration (same as in the Steps section)
Configuration config = new Configuration();
config.setClientId("YOUR_CLIENT_ID");
config.setClientSecret("YOUR_CLIENT_SECRET");

Puoi scaricare gli ultimi file JAR dalla pagina di download.

Opzioni di conversione da XLSX a JPG

Diverse opzioni ti consentono di regolare finemente le immagini generate.

OpzioneDescrizioneEsempio
RisoluzioneDPI dell’immagine di output. Valori più alti migliorano la qualità ma aumentano la dimensione del file.jpgOpts.setResolution(300);
QualitàLivello di compressione JPEG (0‑100).jpgOpts.setQuality(90);
Intervallo di pagineConverti solo i fogli di lavoro specifici.jpgOpts.setPageRange("1-3");
AsyncEsegui la conversione in background e controlla il completamento.jpgOpts.setAsync(true);

Ogni proprietà è parte di JpgConvertOptions nell’SDK. Consulta il riferimento API per l’elenco completo.

Migliorare la velocità di conversione e l’uso della memoria

  1. Streaming dei fogli di lavoro - Elabora un foglio di lavoro alla volta attivando la modalità asincrona; questo impedisce il caricamento dell’intero workbook in memoria.
  2. Regola la risoluzione - Usa il DPI più basso accettabile per il tuo caso d’uso; 150‑200 DPI sono spesso sufficienti per le anteprime web.
  3. Richieste batch - Quando converti molti file, inviali in batch paralleli limitati dalla CPU e dalla capacità di rete del tuo server.
  4. Riutilizza ApiClient - Crea un’unica istanza di ConversionApi e riutilizzala in più conversioni per evitare il sovraccarico di autenticazione ripetuta.

Applicare questi suggerimenti può ridurre il tempo di conversione fino al 40 % per i file Excel di grandi dimensioni.

Conclusione

La conversione da XLSX a JPG in Java diventa semplice con il GroupDocs.Conversion Cloud SDK for Java. Seguendo i passaggi sopra, è possibile renderizzare ogni foglio di lavoro come un JPG ad alta qualità, sfruttare l’elaborazione asincrona per una migliore scalabilità e applicare ottimizzazioni delle prestazioni per cartelle di lavoro di grandi dimensioni. Ricorda di ottenere una licenza adeguata per le distribuzioni in produzione; i dettagli dei prezzi sono disponibili nella pagina del prodotto, e puoi iniziare con una licenza temporanea per valutare la libreria. Integra questa funzionalità nelle tue applicazioni per fornire anteprime visive rapide dei dati di Excel senza fare affidamento su installazioni di Office lato client.

FAQ

Come eseguire la conversione da XLSX a JPG in Java utilizzando GroupDocs?
Utilizza la classe ConversionApi per caricare un file XLSX, imposta JpgConvertOptions (risoluzione, qualità, asincrono) e chiama convertDocument. L’SDK restituisce un ID lavoro che puoi interrogare finché i file JPG non sono pronti.

Posso convertire grandi cartelle di lavoro Excel senza esaurire la memoria?
Sì. Abilita la conversione asincrona e imposta una risoluzione ragionevole. L’SDK elabora i fogli di lavoro in sequenza, mantenendo basso l’uso della memoria.

La conversione asincrona è supportata per XLSX in JPG?
L’SDK fornisce un flag async in JpgConvertOptions. Quando impostato su true, l’API restituisce un ID lavoro, consentendo di verificare lo stato e scaricare i risultati in seguito.

Ho bisogno di una licenza speciale per utilizzare le funzionalità di conversione in produzione?
È necessaria una licenza valida di GroupDocs.Conversion Cloud per l’uso in produzione. È possibile iniziare con una licenza temporanea dalla pagina della licenza temporanea prima di acquistare un abbonamento completo.

Read More