> Pas d’installation locale d’Excel. Pas de serveur de conversion à maintenir. Transformez XLSX → PDF, Excel → CSV/JSON/images/HTML en simples appels REST — et faites fonctionner votre premier “convertisseur de tableurs cloud” en environ trois minutes. “Convertir ce tableur dans un autre format” est l’une des exigences les plus courantes dans le développement quotidien : - Les équipes financières et juridiques veulent un rapport PDF en lecture seule et résistant à la falsification au lieu d’un .xlsx que tout le monde peut modifier ; - Les équipes de données doivent extraire des données tabulaires dans des systèmes en aval sous forme de CSV / JSON ; - Les applications web et mobiles souhaitent que les feuilles de calcul — et même les graphiques — soient rendues directement en PNG / SVG ; - Les portails veulent des extraits propres en HTML / HTML-Table à intégrer ; - Quelqu’un doit normaliser une pile de fichiers .xls / .xlsx / .csv / .ods dans un seul format. Les réponses à l’ancienne — une installation locale d’Excel avec des macros, ou un composant COM lourd sur votre propre serveur — sont difficiles à évoluer et difficiles à maintenir multiplateforme. Aspose.Cells Cloud remplace tout cela par une pure API REST : téléchargez un fichier, obtenez un fichier dans un nouveau format en retour. Cet article passe en revue les trois API de conversion exposées par le ConversionController central dans le microservice Aspose.Cells Cloud (source : src/Aspose.Cells.Cloud.MicroService/Controllers/ConversionController.cs), avec des exemples exécutables en cURL, C# (.NET), Python et Java. — ## 1. Que peut faire la fonctionnalité Convertir ? ConversionController est le contrôleur dédié à la conversion / exportation de format. Il encapsule la conversion de haute fidélité au niveau du moteur en trois ensembles d’API HTTP : | # | Scénario | Point de terminaison typique | Ce qu’il fait | | — | ———————————————————— | —————————————————— | —————————————————————————————————————————- | | 1 | Fichier déjà dans le stockage cloud → télécharger un nouveau format | GET /v4.0/cells/{name}?format=pdf | Convertit un classeur directement dans le stockage cloud et renvoie le résultat — les gros fichiers n’ont jamais à voyager vers votre machine | | 2 | Fichier local → conversion en ligne (fonction phare) | PUT /v4.0/cells/convert/spreadsheet?format=pdf | Vous téléchargez le fichier dans le corps de la requête (multipart) ; le serveur le convertit et renvoie directement le fichier résultat | | 3 | Fichier cloud → enregistrer sous un nouveau format, retour au stockage cloud | PUT /v4.0/cells/{name}/saveas?format=pdf | Le fichier converti est écrit directement dans le stockage cloud — idéal pour les pipelines automatisés | > Remarque d’implémentation : les routes source utilisent le préfixe v{version}/cells avec la version API 4.0, donc les appels en direct ressemblent à https://api.aspose.cloud/v4.0/cells/.... ### La granularité de conversion va bien au-delà de “tout le fichier” En plus de convertir un classeur entier, le contrôleur peut exporter un élément unique : - Une feuille de calcul spécifique → PDF / image / CSV / JSON / HTML - Une plage de cellules spécifique (par exemple A1:C12) → PDF / image / CSV / JSON / HTML - Un tableau spécifique → PDF / image / CSV / JSON / HTML - Un graphique spécifique → PNG / JPEG / BMP / GIF / SVG / TIFF / EMF / PDF Ainsi, vous n’avez jamais à convertir un gros classeur de 50 Mo juste pour récupérer un graphique — convertissez uniquement ce dont vous avez besoin et économisez de la bande passante et des ressources. — ## 2. Quels formats sont pris en charge ? Basé sur le registre ExportData intégré dans le contrôleur, la matrice de conversion ressemble à ceci : | Type | Formats | | —————————————– | ———————————————————————————————————————- | | Importation et exportation (bidirectionnelle) | XLS, XLSX, XLSB, XLSM, CSV, TSV, ODS, TXT | | Exportation uniquement | PDF, OTS, XPS, DIF, HTML / MHTML, JSON, PNG, JPEG, BMP, SVG, TIFF, EMF, NUMBERS, FODS, Markdown, DOCX, PPTX, SQL, etc. | En résumé : conversions de tableur à tableur de tous types, plus toute la famille de sorties tableur → PDF / image / données web — le tout derrière une seule surface API. — ## 3. Deux choses dont vous avez besoin avant de commencer 1. Inscrivez-vous pour un compte gratuit sur le Tableau de bord Aspose Cloud et créez une application pour obtenir un Client ID et un Client Secret (les SDK échangent cela pour un JWT automatiquement — pas besoin de construire vous-même des en-têtes d’authentification). 2. Installez le SDK pour votre langage de choix : xml <!-- .NET --> <PackageReference Include="Aspose.Cells-Cloud" Version="25.x" /> bash # Python pip install asposecellscloud xml <!-- Java (Maven) — note : PAS sur Maven Central, donc le dépôt Aspose ci-dessous est requis --> <repositories> <repository> <id>AsposeJavaAPI</id> <name>Aspose Java API</name> <url>https://repository.aspose.cloud/repo/</url> </repository> </repositories> <dependency> <groupId>com.aspose</groupId> <artifactId>aspose-cells-cloud</artifactId> <version>26.8</version> </dependency> > Pas besoin de SDK ? Tout est en REST simple, donc cURL fonctionne tout aussi bien (voir ci-dessous). — ## 4. Scénario 1 : Convertir un fichier Excel local en ligne (l’API Convert phare) C’est PUT /v4.0/cells/convert/spreadsheet — l’API “Convertir” phare : téléchargez votre fichier local dans le corps de la requête, le serveur le convertit et renvoie le nouveau fichier. Rien n’est conservé dans le stockage cloud et aucune copie de téléchargement ne persiste — parfait pour les moments “convertissez juste cela pour moi”. ### ① cURL bash # 1) D'abord, obtenez un token curl -X POST "https://api.aspose.cloud/connect/token" \ -d "grant_type=client_credentials" \ -d "client_id=YOUR_CLIENT_ID" \ -d "client_secret=YOUR_CLIENT_SECRET" # 2) XLSX -> PDF curl -X PUT "https://api.aspose.cloud/v4.0/cells/convert/spreadsheet?format=pdf" \ -H "Authorization: Bearer $TOKEN" \ -F "file=@Book1.xlsx" \ -o Book1.pdf Échangez format contre csv, json, png, xlsx… et vous obtenez ce format. Un paramètre, un format de sortie. ### ② C# / .NET csharp using Aspose.Cells.Cloud.SDK.Api; using Aspose.Cells.Cloud.SDK.Request; var cellsApi = new CellsApi("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET"); var request = new ConvertSpreadsheetRequest( spreadsheet: "C:/invoices/Book1.xlsx", // chemin du fichier local format: "pdf"); // cible : pdf / csv / json / png ... using Stream result = cellsApi.ConvertSpreadsheet(request); // flux de fichier converti using var outFile = File.Create("C:/invoices/Book1.pdf"); result.CopyTo(outFile); // Encore plus simple : pointez le SDK vers un chemin de sortie et laissez-le écrire le fichier // cellsApi.ConvertSpreadsheet(request, "C:/invoices/Book1.pdf"); > Besoin d’un travail par lots ? Placez cela dans une boucle sur un répertoire et vous avez “convertir tout le dossier XLSX → PDF”. ### ③ Python python from asposecellscloud.apis.cells_api import CellsApi from asposecellscloud.requests import ConvertSpreadsheetRequest import os instance = CellsApi( os.getenv('CellsCloudClientId'), os.getenv('CellsCloudClientSecret')) # XLSX local -> PDF, résultat écrit localement instance.convert_spreadsheet( ConvertSpreadsheetRequest("Book1.xlsx", "pdf"), local_outpath="Book1.pdf") # Autres formats : changez simplement le paramètre — json / csv / xlsx / png ... ### ④ Java java import com.aspose.cloud.cells.api.CellsApi; import com.aspose.cloud.cells.request.ConvertSpreadsheetRequest; import java.io.File; public class ConvertDemo { public static void main(String[] args) throws Exception { CellsApi api = new CellsApi("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET"); ConvertSpreadsheetRequest req = new ConvertSpreadsheetRequest(); req.setSpreadsheet("C:/invoices/Book1.xlsx"); // chemin du fichier local req.setFormat("pdf"); // cible : pdf / csv / json / png ... File out = api.convertSpreadsheet(req); // résultat converti sous forme de fichier out.renameTo(new File("C:/invoices/Book1.pdf")); System.out.println("Converti : " + out.getAbsolutePath()); } } Quatre langages, une action : donnez un chemin + un paramètre de format → obtenez le fichier cible en retour. C’est tout l’argument de vente de l’API Convertir — aucune dépendance Excel du côté de l’appelant, pas de modèles, pas de composants COM. — ## 5. Scénario 2 : Convertir un fichier stocké dans le cloud directement Lorsqu’un fichier est déjà dans le stockage cloud Aspose (ou votre stockage d’objets), vous n’avez pas besoin de télécharger/télécharger de gros fichiers — la conversion se fait dans le cloud, minimisant le transfert de données et améliorant les performances sur de gros classeurs : bash # cloud Book1.xlsx -> PDF, téléchargé localement curl -G "https://api.aspose.cloud/v4.0/cells/Book1.xlsx" \ -H "Authorization: Bearer $TOKEN" \ --data-urlencode "format=pdf" \ --data-urlencode "folder=Reports" \ -o Book1.pdf python from asposecellscloud.apis.cells_api import CellsApi from asposecellscloud.requests import ExportSpreadsheetAsFormatRequest instance = CellsApi("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET") # Convertir un classeur stocké dans le cloud directement en PDF instance.export_spreadsheet_as_format( ExportSpreadsheetAsFormatRequest("Book1.xlsx", format="pdf", folder="Reports")) Vous pouvez également explorer un seul élément — par exemple, rendre “le 3ème graphique sur Sheet1” en PNG (version stockage cloud) : bash # graphique -> PNG curl -G "https://api.aspose.cloud/v4.0/cells/Book1.xlsx/worksheets/Sheet1/charts/2" \ -H "Authorization: Bearer $TOKEN" \ --data-urlencode "format=png" \ -o chart.png Points de terminaison cloud granulaires à un coup d’œil : | Cible | Point de terminaison | Exemple format | | —————- | ——————————————————————- | —————————– | | Classeur entier | GET /v4.0/cells/{name} | pdf / xlsx / csv / json | | Feuille de calcul unique | GET /v4.0/cells/{name}/worksheets/{ws} | pdf / png / svg | | Plage unique | GET /v4.0/cells/{name}/worksheets/{ws}/ranges/{range} | pdf / csv / json / html / png | | Tableau unique | GET /v4.0/cells/{name}/worksheets/{ws}/tables/{table} | pdf / csv / json / html / png | | Graphique unique | GET /v4.0/cells/{name}/worksheets/{ws}/charts/{index} | pdf / png / jpeg / svg / tiff | — ## 6. Scénario 3 : SaveAs — écrivez le résultat dans le stockage cloud Lorsque vous souhaitez que le fichier converti soit conservé dans le stockage cloud (plutôt que téléchargé), utilisez PUT /v4.0/cells/{name}/saveas. C’est un ajustement naturel pour l’automatisation, comme “exporter le rapport d’aujourd’hui en PDF pour archivage, chaque jour” : bash curl -X PUT "https://api.aspose.cloud/v4.0/cells/Book1.xlsx/saveas?format=pdf" \ -H "Authorization: Bearer $TOKEN" \ -H "Content-Type: application/json" \ -d '{}' python from asposecellscloud.apis.cells_api import CellsApi from asposecellscloud.requests import SaveSpreadsheetAsRequest instance = CellsApi("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET") instance.save_spreadsheet_as( SaveSpreadsheetAsRequest("Book1.xlsx", format="pdf", folder="Reports")) # Le résultat est enregistré directement dans le stockage cloud ; renvoie CellsCloudResponse(Code=200, Status="OK") Vous pouvez passer des options de sauvegarde détaillées via le corps de la requête SaveOptionsData, et contrôler le nom du fichier de sortie, le stockage de sortie, les polices personnalisées, la région/locale, le mot de passe, etc. via des paramètres de requête — plus d’informations sur ces options dans les détails techniques ci-dessous. — ## 7. Plus de points de terminaison “convertir en ligne” prêts à l’emploi En plus des conversions au niveau du classeur ci-dessus, le contrôleur expose un ensemble complet de points de terminaison dédiés fichier local → cible spécifique (même modèle de téléchargement dans le corps que le Scénario 1), qui sont plus granulaires et moins coûteux en bande passante : | Objectif | Point de terminaison (PUT, préfixe /v4.0/cells/convert/) | | ————————————————— | ——————————————————————————————————– | | Classeur → PDF / JSON / CSV | spreadsheet/pdf, spreadsheet/json, spreadsheet/csv | | Feuille de calcul → PDF / JSON / CSV / HTML / HTML-Table | worksheet/pdf, worksheet/json, worksheet/csv, worksheet/html, worksheet/html-table | | Feuille de calcul → image | worksheet/image?worksheet=Sheet1&format=png | | Plage → PDF / CSV / HTML / JSON / image | range/pdf, range/csv, range/html, range/json, range/image?worksheet=..&range=A1:C12&format=png | | Tableau → PDF / CSV / HTML / JSON / image | table/pdf, table/csv, table/html, table/json, table/image | | Graphique → image / PDF | chart/image?worksheet=..&chartIndex=0&format=png, chart/pdf | Par exemple, “exportez juste cette plage en CSV pour le système en aval” : bash curl -X PUT "https://api.aspose.cloud/v4.0/cells/convert/range/csv" \ -H "Authorization: Bearer $TOKEN" \ --data-urlencode "worksheet=Sheet1" \ --data-urlencode "range=A1:C100" \ -F "file=@data.xlsx" \ -o data.csv Ces points de terminaison utilisent le même modèle de téléchargement dans le corps que convert/spreadsheet. Dans le SDK .NET, les cas de graphique ont des wrappers typés qui correspondent à ces routes v4.0 — ConvertChartToImage (convert/chart/image) et ConvertChartToPdf (convert/chart/pdf). Les variantes worksheet/*, range/* et table/* n’ont pas encore de wrapper v4.0, donc appelez-les via REST brut exactement comme le fait le cURL ci-dessus. — ## 8. Détails techniques & gestion des erreurs ### Options de conversion à connaître (paramètres de requête) - password — ouvrir des classeurs protégés par mot de passe ; - fontsLocation / support des polices personnalisées — garder les glyphes corrects lors du rendu en PDF/images ; - ajustement automatique des lignes/colonnes, et si les en-têtes de lignes/colonnes doivent être imprimés (printHeadings), configuration de région/page (region), etc. ; - côté sortie : outPath / outStorageName décident où le résultat se trouve dans le stockage cloud. ### Codes d’erreur (le contrat que le contrôleur documente) | Statut | Signification | Cause typique | | ——- | —————— | ———————————————————– | | 400 | Mauvaise requête | URL / paramètres invalides, ou un format non pris en charge | | 401 | Non autorisé | Échec de l’authentification ou pas de crédentiels valides fournis | | 404 | Non trouvé | Le fichier source n’est pas accessible dans le stockage cloud | | 500 | Erreur de serveur | Le service a rencontré une anomalie lors de l’obtention des données de conversion | ### Authentification Tous les SDK s’authentifient automatiquement avec OAuth 2.0 client_credentials et un JWT ; lors de l’utilisation de cURL brut, appelez /connect/token une fois d’abord (voir Scénario 1, ① ci-dessus). — ## 9. Pourquoi Aspose.Cells Cloud Convert ? - ✅ Aucune dépendance locale — pas d’Office/Excel, pas de COM. Appelable depuis n’importe quel langage et n’importe quelle plateforme (Linux, conteneurs, sans serveur) ; - ✅ Rendu de haute fidélité — propulsé par le moteur Aspose.Cells, donc les formules, graphiques, styles et pagination sont rendus à une qualité professionnelle en PDF/images ; - ✅ Natif cloud — les fichiers peuvent rester dans le cloud pendant la conversion pour éviter d’expédier de gros volumes de données ; la conversion pure en ligne n’a besoin d’aucun stockage cloud ; - ✅ Granularité flexible — classeur / feuille de calcul / plage / tableau / graphique : convertissez exactement la pièce dont vous avez besoin ; - ✅ Une forme à travers les SDK — les exemples cURL, .NET, Python et Java correspondent 1:1, donc vous pouvez littéralement copier le modèle que vous aimez. Commencez dès maintenant : inscrivez-vous sur le Tableau de bord Aspose Cloud, créez une application, insérez vos identifiants dans n’importe quel extrait ci-dessus et exécutez-le — vous aurez votre propre “convertisseur Excel cloud” en quelques minutes. Vous avez trouvé cela utile ? Étoile, signet ou partagez-le — et parlez-nous de vos propres cas d’utilisation de conversion de tableurs dans les commentaires.