> Немає локальної установки Excel. Немає сервера для підтримки перетворення. Перетворюйте XLSX → PDF, Excel → CSV/JSON/зображення/HTML у прості REST-запити — і запустіть свій перший “хмарний конвертер електронних таблиць” приблизно за три хвилини. “Перетворити цю електронну таблицю в інший формат” — одна з найпоширеніших вимог у повсякденній розробці: - Фінансові та юридичні команди хочуть недоступний для редагування, захищений PDF звіт замість .xlsx, який може редагувати будь-хто; - Команди даних повинні витягувати табличні дані в наступні системи як CSV / JSON; - Веб- та мобільні додатки хочуть, щоб аркуші — і навіть графіки — відображалися безпосередньо у PNG / SVG; - Портали хочуть чисті фрагменти HTML / HTML-таблиці для вбудовування; - Хтось повинен нормалізувати купу .xls / .xlsx / .csv / .ods файлів в один формат. Старомодні рішення — локальна установка Excel з макросами або важка компонента COM на вашому сервері — важко масштабувати та важко підтримувати крос-платформенно. Aspose.Cells Cloud замінює все це чистим REST API: завантажте файл, отримайте файл нового формату назад. Ця стаття проходить через три API перетворення, які надає основний ConversionController у мікросервісі Aspose.Cells Cloud (джерело: src/Aspose.Cells.Cloud.MicroService/Controllers/ConversionController.cs), з виконуваними прикладами в cURL, C# (.NET), Python та Java. — ## 1. Що може зробити функція Перетворення? ConversionController — це контролер, присвячений перетворенню формату / експорту. Він обгортає високоякісне перетворення на рівні движка в три набори HTTP API: | # | Сценарій | Типова кінцева точка | Що це робить | | — | ———————————————————— | ————————————————— | —————————————————————————————————————————- | | 1 | Файл вже в хмарному сховищі → завантажити новий формат | GET /v4.0/cells/{name}?format=pdf | Перетворює книгу безпосередньо в хмарному сховищі та повертає результат — великі файли ніколи не повинні подорожувати на вашу машину | | 2 | Локальний файл → онлайн-перетворення (основна функція) | PUT /v4.0/cells/convert/spreadsheet?format=pdf | Ви завантажуєте файл в тілі запиту (multipart); сервер перетворює його та повертає файл результату безпосередньо | | 3 | Хмарний файл → зберегти як новий формат, назад до хмарного сховища | PUT /v4.0/cells/{name}/saveas?format=pdf | Перетворений файл записується безпосередньо назад у хмарне сховище — ідеально для автоматизованих конвеєрів | > Примітка щодо реалізації: вихідні маршрути використовують префікс v{version}/cells з версією API 4.0, тому живі виклики виглядають як https://api.aspose.cloud/v4.0/cells/.... ### Гранулярність перетворення йде далеко за межі “всього файлу” Окрім перетворення цілого робочого зошита, контролер може експортувати один елемент: - Конкретний аркуш → PDF / зображення / CSV / JSON / HTML - Конкретний діапазон клітинок (наприклад, A1:C12) → PDF / зображення / CSV / JSON / HTML - Конкретна таблиця → PDF / зображення / CSV / JSON / HTML - Конкретний графік → PNG / JPEG / BMP / GIF / SVG / TIFF / EMF / PDF Отже, вам ніколи не потрібно перетворювати цілий 50 МБ робочий зошит лише для того, щоб отримати один графік — перетворюйте лише те, що вам потрібно, і економте пропускну здатність та обчислення. — ## 2. Які формати підтримуються? На основі вбудованого реєстру ExportData у контролері, матриця перетворення виглядає приблизно так: | Тип | Формати | | —————————————– | ———————————————————————————————————————- | | Імпорт та експорт (двосторонній) | XLS, XLSX, XLSB, XLSM, CSV, TSV, ODS, TXT | | Тільки для експорту | PDF, OTS, XPS, DIF, HTML / MHTML, JSON, PNG, JPEG, BMP, SVG, TIFF, EMF, NUMBERS, FODS, Markdown, DOCX, PPTX, SQL тощо. | Коротко: перетворення електронних таблиць у електронні таблиці будь-якого виду, плюс вся сім’я виходів електронних таблиць → PDF / зображення / веб-дані — все це за одним API. — ## 3. Дві речі, які вам потрібні перед початком 1. Зареєструйте безкоштовний обліковий запис на Aspose Cloud Dashboard і створіть додаток, щоб отримати Client ID та Client Secret (SDK автоматично обмінює їх на JWT — немає потреби самостійно створювати заголовки автентифікації). 2. Встановіть SDK для вашої улюбленої мови: xml <!-- .NET --> <PackageReference Include="Aspose.Cells-Cloud" Version="25.x" /> bash # Python pip install asposecellscloud xml <!-- Java (Maven) — зауважте: НЕ в Maven Central, тому нижче потрібен репозиторій Aspose --> <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> > Не потрібен SDK? Все це чистий REST, тому cURL також працює (див. нижче). — ## 4. Сценарій 1: Перетворення локального файлу Excel онлайн (основний Convert API) Це PUT /v4.0/cells/convert/spreadsheet — флагманський “Convert” API: завантажте ваш локальний файл у тілі запиту, сервер перетворює його і передає новий файл назад. Нічого не зберігається в хмарному сховищі, і жодна копія завантаження не залишається — ідеально для моментів “просто перетворіть це для мене”. ### ① cURL bash # 1) Спочатку отримайте токен 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 Замініть format на csv, json, png, xlsx… і ви отримаєте той формат. Один параметр, один вихідний формат. ### ② 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", // локальний шлях до файлу format: "pdf"); // ціль: pdf / csv / json / png ... using Stream result = cellsApi.ConvertSpreadsheet(request); // потік перетвореного файлу using var outFile = File.Create("C:/invoices/Book1.pdf"); result.CopyTo(outFile); // Навіть простіше: вкажіть SDK на шлях виходу і дозвольте йому записати файл // cellsApi.ConvertSpreadsheet(request, "C:/invoices/Book1.pdf"); > Потрібен пакетний процес? Помістіть це в цикл по директорії, і у вас буде “перетворити всю папку 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 -> PDF, результат записується локально instance.convert_spreadsheet( ConvertSpreadsheetRequest("Book1.xlsx", "pdf"), local_outpath="Book1.pdf") # Інші формати: просто змініть параметр — 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"); // локальний шлях до файлу req.setFormat("pdf"); // ціль: pdf / csv / json / png ... File out = api.convertSpreadsheet(req); // перетворений результат як файл out.renameTo(new File("C:/invoices/Book1.pdf")); System.out.println("Перетворено: " + out.getAbsolutePath()); } } Чотири мови, одна дія: вкажіть шлях + параметр формату → отримайте цільовий файл назад. Це вся суть Convert API — нульова залежність від Excel на стороні виклику, жодних шаблонів, жодних компонентів COM. — ## 5. Сценарій 2: Перетворення файлу, що зберігається в хмарі, безпосередньо Коли файл вже знаходиться в хмарному сховищі Aspose (або вашому об’єктному сховищі), вам не потрібно завантажувати/завантажувати великі файли — перетворення відбувається в хмарі, мінімізуючи передачу даних та покращуючи продуктивність на великих робочих зошитах: bash # хмарний Book1.xlsx -> PDF, завантажено локально 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") # Перетворіть книгу, що зберігається в хмарі, безпосередньо у PDF instance.export_spreadsheet_as_format( ExportSpreadsheetAsFormatRequest("Book1.xlsx", format="pdf", folder="Reports")) Ви також можете заглибитися в один елемент — наприклад, відобразити “3-й графік на Sheet1” як PNG (варіант для хмарного зберігання): bash # графік -> 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 Гранулярні хмарні кінцеві точки на один погляд: | Ціль | Кінцева точка | Приклад format | | —————- | —————————————————— | —————————– | | Вся книга | GET /v4.0/cells/{name} | pdf / xlsx / csv / json | | Один аркуш | GET /v4.0/cells/{name}/worksheets/{ws} | pdf / png / svg | | Один діапазон | GET /v4.0/cells/{name}/worksheets/{ws}/ranges/{range} | pdf / csv / json / html / png | | Одна таблиця | GET /v4.0/cells/{name}/worksheets/{ws}/tables/{table} | pdf / csv / json / html / png | | Один графік | GET /v4.0/cells/{name}/worksheets/{ws}/charts/{index} | pdf / png / jpeg / svg / tiff | — ## 6. Сценарій 3: SaveAs — запишіть результат назад у хмарне сховище Коли ви хочете, щоб перетворений файл зберігався назад у хмарному сховищі (замість того, щоб завантажувати), використовуйте PUT /v4.0/cells/{name}/saveas. Це природно підходить для автоматизації, такої як “експортувати звіт за сьогодні у PDF для архівування щодня”: 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")) # Результат зберігається безпосередньо в хмарному сховищі; повертає CellsCloudResponse(Code=200, Status="OK") Ви можете передати детальні параметри збереження через тіло запиту SaveOptionsData і контролювати ім’я вихідного файлу, вихідне сховище, користувацькі шрифти, регіон/локаль, пароль тощо через параметри запиту — більше про це нижче в Технічні деталі. — ## 7. Більше готових “онлайн-конвертувальних” кінцевих точок Окрім перетворень на рівні робочого зошита, контролер надає повний набір спеціалізованих локальних файлів → конкретних цілей кінцевих точок (такий же запит на завантаження в тілі, як у Сценарії 1), які є більш гранулярними та дешевшими за пропускну здатність: | Мета | Кінцева точка (PUT, префікс /v4.0/cells/convert/) | | ———————————————— | ——————————————————————————————————– | | Робочий зошит → PDF / JSON / CSV | spreadsheet/pdf, spreadsheet/json, spreadsheet/csv | | Аркуш → PDF / JSON / CSV / HTML / HTML-таблиця | worksheet/pdf, worksheet/json, worksheet/csv, worksheet/html, worksheet/html-table | | Аркуш → зображення | worksheet/image?worksheet=Sheet1&format=png | | Діапазон → PDF / CSV / HTML / JSON / зображення | range/pdf, range/csv, range/html, range/json, range/image?worksheet=..&range=A1:C12&format=png | | Таблиця → PDF / CSV / HTML / JSON / зображення | table/pdf, table/csv, table/html, table/json, table/image | | Графік → зображення / PDF | chart/image?worksheet=..&chartIndex=0&format=png, chart/pdf | Наприклад, “експортуйте лише цей діапазон як CSV для наступної системи”: 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 Ці кінцеві точки використовують той же шаблон завантаження в тілі, що й convert/spreadsheet. У .NET SDK випадки графіків мають типізовані обгортки, які відповідають цим маршрутам v4.0 — ConvertChartToImage (convert/chart/image) і ConvertChartToPdf (convert/chart/pdf). Варіанти worksheet/*, range/* і table/* поки не мають обгортки v4.0, тому викликайте їх через чистий REST так, як це робить cURL вище. — ## 8. Технічні деталі та обробка помилок ### Параметри перетворення, які варто знати (параметри запиту) - password — відкриття паролем захищених книг; - fontsLocation / підтримка користувацьких шрифтів — зберігайте правильні гліфи при створенні PDF/зображень; - автоматичне налаштування рядків/стовпців, а також чи друкувати заголовки рядків/стовпців (printHeadings), налаштування регіону/сторінки (region) тощо; - вихідна сторона: outPath / outStorageName вирішують, де результат потрапляє в хмарне сховище. ### Коди помилок (контракт, який документує контролер) | Статус | Значення | Типова причина | | ——- | ———— | ———————————————————– | | 400 | Неправильний запит | Неправильний URL / параметри або непідтримуваний format | | 401 | Неавторизовано | Автентифікація не вдалася або не були надані дійсні облікові дані | | 404 | Не знайдено | Джерельний файл недоступний у хмарному сховищі | | 500 | Помилка сервера | Служба зіткнулася з аномалією під час отримання даних для перетворення | ### Автентифікація Усі SDK автоматично автентифікуються за допомогою OAuth 2.0 client_credentials та JWT; при використанні чистого cURL спочатку викликайте /connect/token один раз (див. Сценарій 1, ① вище). — ## 9. Чому Aspose.Cells Cloud Convert? - ✅ Нульові локальні залежності — без Office/Excel, без COM. Викликається з будь-якої мови та будь-якої платформи (Linux, контейнери, безсерверні); - ✅ Високоякісне відтворення — на основі движка Aspose.Cells, тому формули, графіки, стилі та нумерація сторінок відображаються професійної якості у PDF/зображеннях; - ✅ Хмарний — файли можуть залишатися в хмарі під час перетворення, щоб уникнути передачі великих обсягів даних; чисте онлайн-перетворення не потребує хмарного сховища взагалі; - ✅ Гнучка гранулярність — робочий зошит / аркуш / діапазон / таблиця / графік: перетворюйте точно ту частину, яка вам потрібна; - ✅ Одна форма для всіх SDK — приклади cURL, .NET, Python та Java відображаються 1:1, тому ви можете буквально скопіювати той шаблон, який вам подобається. Почніть зараз: зареєструйтеся на Aspose Cloud Dashboard, створіть додаток, вставте свої облікові дані в будь-який фрагмент вище та запустіть його — ви отримаєте свій власний “хмарний конвертер Excel” за кілька хвилин. Вважаєте це корисним? Ставте зірки, зберігайте в закладках або діліться цим — і розкажіть нам про свої власні випадки використання перетворення електронних таблиць у коментарях.