Générer des aperçus visuels des données de feuilles de calcul est une exigence fréquente lors de la création de tableaux de bord de reporting ou de résumés par e‑mail. Conholdate.Total for Java fournit un SDK robuste qui simplifie le processus de conversion d’Excel en image dans les applications Java. Dans ce guide, vous verrez comment charger un classeur XLSX, configurer la sortie PNG et produire des fichiers image pour des feuilles de calcul complètes, des graphiques ou des plages spécifiques. À la fin, vous disposerez d’un exemple de code prêt à l’exécution que vous pourrez adapter à vos propres projets.
Ce que Convert Excel Files to Image exige de votre application
Les développeurs ont souvent besoin de convertir le contenu d’une feuille de calcul en images statiques pour les aperçus Web, les rapports PDF ou les vignettes mobiles. L’exigence comprend généralement la préservation du formatage des cellules, le rendu des graphiques intégrés, et, éventuellement, la limitation de la conversion à une seule plage. Effectuer ces tâches manuellement en ouvrant Excel, en prenant des captures d’écran et en les enregistrant n’est pas évolutif et peut entraîner des résultats incohérents.
Les contraintes techniques pour une solution fiable sont : prise en charge des fichiers XLSX, capacité à inclure des graphiques et des formules, résolution d’image configurable et traitement par lots de plusieurs feuilles de calcul. La conversion doit s’exécuter sur un serveur ou un environnement de bureau sans nécessiter Microsoft Office.
Choisir Conholdate.Total for Java pour le travail
Conholdate.Total for Java offre une API unifiée qui couvre toutes les capacités nécessaires. Ses ExcelLoadOptions vous permettent de charger des graphiques et des formules, tandis que ImageConvertOptions offrent un contrôle granulaire sur le format, la qualité et les dimensions. Le SDK fonctionne sur n’importe quel runtime Java, ne nécessite que la dépendance Maven et gère efficacement les classeurs volumineux.
Pour une utilisation détaillée de l’API, consultez la documentation officielle. La référence complète des classes telles que Conversion, ExcelLoadOptions et ImageConvertOptions est disponible dans la référence API. Vous pouvez télécharger la dernière bibliothèque depuis la page de publication.
Implémentation de la conversion Excel en image en Java
Le processus de conversion peut être décomposé en quelques étapes claires. Les sections suivantes vous guident à travers chaque partie, avec de courts extraits de code tirés directement de l’exemple complet.
Installer Conholdate.Total for Java via Maven
Ajoutez le référentiel Maven Conholdate et la dépendance SDK à votre pom.xml :
<repositories>
<repository>
<id>conholdate-repo</id>
<name>Conholdate Maven Repository</name>
<url>https://repository.conholdate.com/repo/</url>
</repository>
</repositories>
<dependency>
<groupId>com.conholdate</groupId>
<artifactId>conholdate-total</artifactId>
<version>24.9</version>
<type>pom</type>
</dependency>
Charger le fichier Excel avec prise en charge des graphiques et des formules
Créez une instance ExcelLoadOptions, activez le chargement des graphiques et des formules, et initialisez l’objet Conversion avec un flux de fichier :
ExcelLoadOptions loadOptions = new ExcelLoadOptions();
loadOptions.setLoadCharts(true);
loadOptions.setLoadFormulas(true);
Conversion conversion = new Conversion(new FileInputStream("input.xlsx"), loadOptions);
Configurer les options de sortie d’image pour PNG
Définissez le format d’image souhaité, la qualité et les dimensions. La largeur est fixe tandis que la hauteur conserve le ratio d’aspect :
ImageConvertOptions imgOptions = new ImageConvertOptions();
imgOptions.setFormat(ImageConvertOptions.ImageFormat.PNG);
imgOptions.setQuality(90);
imgOptions.setWidth(1200);
imgOptions.setHeight(0); // preserve aspect ratio
Convertir chaque feuille de calcul ou plage en images PNG
Parcourez les pages du classeur (feuilles) et convertissez chacune d’elles. Vous pouvez également cibler une plage spécifique en ajustant le pageNumber ou en utilisant des options de chargement supplémentaires :
int pageCount = conversion.getPageCount();
for (int i = 1; i <= pageCount; i++) {
imgOptions.setPageNumber(i);
String outputPath = "output_images/sheet_" + i + ".png";
conversion.convert(outputPath, imgOptions);
}
Vérifier la sortie et gérer les exceptions
Enveloppez la logique de conversion dans un bloc try‑catch et assurez‑vous que le répertoire de sortie existe avant de commencer :
try {
Files.createDirectories(Paths.get("output_images"));
// conversion code here
System.out.println("Excel to image conversion completed successfully.");
} catch (Exception ex) {
System.err.println("Conversion failed: " + ex.getMessage());
ex.printStackTrace();
}
Les étapes ci‑dessus démontrent comment convertir Excel en image en utilisant le Conholdate.Total SDK tout en vous offrant la flexibilité de gérer les graphiques, les plages et les feuilles de calcul complètes.
Exemple complet de code : Convertir Excel en image avec prise en charge de la feuille complète
Le code suivant montre l’implémentation complète, prête à l’exécution, décrite dans les étapes ci‑dessus.
import java.io.FileInputStream;
import java.nio.file.Files;
import java.nio.file.Paths;
import com.groupdocs.conversion.Conversion;
import com.groupdocs.conversion.options.load.ExcelLoadOptions;
import com.groupdocs.conversion.options.convert.ImageConvertOptions;
import com.groupdocs.conversion.options.convert.ImageConvertOptions.ImageFormat;
public class ExcelToImageConverter {
public static void main(String[] args) {
String inputFile = "input.xlsx";
String outputFolder = "output_images";
try {
// Create output directory if it does not exist
Files.createDirectories(Paths.get(outputFolder));
// Load options: include charts and formulas during conversion
ExcelLoadOptions loadOptions = new ExcelLoadOptions();
loadOptions.setLoadCharts(true);
loadOptions.setLoadFormulas(true);
// Initialize conversion with the Excel file and load options
try (Conversion conversion = new Conversion(new FileInputStream(inputFile), loadOptions)) {
// Determine how many pages (sheets) the workbook has
int pageCount = conversion.getPageCount();
// Configure image output options
ImageConvertOptions imgOptions = new ImageConvertOptions();
imgOptions.setFormat(ImageFormat.PNG); // Output format
imgOptions.setQuality(90); // Quality (relevant for JPEG)
imgOptions.setWidth(1200); // Desired width, height will keep aspect ratio
imgOptions.setHeight(0); // 0 means preserve original aspect ratio
// Convert each sheet to a separate image file
for (int i = 1; i <= pageCount; i++) {
imgOptions.setPageNumber(i);
String outputPath = outputFolder + "/sheet_" + i + ".png";
conversion.convert(outputPath, imgOptions);
}
}
System.out.println("Excel to image conversion completed successfully.");
} catch (Exception ex) {
System.err.println("Conversion failed: " + ex.getMessage());
ex.printStackTrace();
}
}
}
Remarque : Cet exemple de code démontre la fonctionnalité principale. Avant de l’utiliser dans votre projet, assurez‑vous de mettre à jour les chemins de fichiers (
input.xlsx,output_images) pour qu’ils correspondent à vos emplacements réels, vérifiez que toutes les dépendances requises sont correctement installées et testez soigneusement dans votre environnement de développement. Si vous rencontrez des problèmes, veuillez consulter la documentation officielle ou contacter l’équipe de support pour obtenir de l’aide.
Conclusion
La conversion d’Excel en image en Java devient simple lorsque vous utilisez Conholdate.Total for Java. Le SDK gère le rendu des graphiques, l’évaluation des formules et la génération d’images PNG de haute qualité avec un code minimal. En suivant le guide étape par étape, vous pouvez intégrer cette fonctionnalité aux outils de reporting, aux générateurs d’e‑mail ou à toute application nécessitant des représentations visuelles de feuilles de calcul. N’oubliez pas que les déploiements en production nécessitent une licence commerciale ; vous pouvez explorer les options tarifaires sur la page Conholdate.Total pricing et obtenir une licence temporaire depuis la temporary license page lors de l’évaluation.
FAQs
Comment puis‑je convertir Excel en image en Java ?
Utilisez la classeConversionde Conholdate.Total for Java, configurezExcelLoadOptionsetImageConvertOptions, puis appelezconvertpour chaque feuille de calcul.Puis-je convertir un graphique Excel en image ?
Oui. Activez le chargement des graphiques avecloadOptions.setLoadCharts(true)et spécifiez le numéro de page du graphique lors de la définition deimgOptions.setPageNumber.Est‑il possible de convertir uniquement une plage spécifique de cellules ?
Vous pouvez définir une plage dans les options de chargement ou sélectionner le numéro de page approprié qui correspond à la plage souhaitée avant la conversion.Quel type de licence est requis pour une utilisation en production ?
Une licence commerciale est requise. Consultez les coûts sur la page Conholdate.Total pricing et obtenez une licence temporaire depuis la page de licence temporaire.
