無需本機 Excel 安裝。無需維護轉換伺服器。將 XLSX → PDF、Excel → CSV/JSON/圖片/HTML 轉換為簡單的 REST 呼叫——並在大約三分鐘內讓您的第一個 “雲端試算表轉換器” 運行起來。

“Convert that spreadsheet to a different format” 是日常開發中最常見的需求之一:

  • 財務與法務團隊希望獲得 唯讀、抗篡改的 PDF 報告,而不是任何人都能編輯的 .xlsx;
  • 數據團隊需要將表格資料提取到下游系統,格式為 CSV / JSON;
  • 網頁與行動應用程式希望將工作表——甚至 圖表——直接渲染為 PNG / SVG;
  • 入口網站需要乾淨的 HTML / HTML-Table 片段以嵌入;
  • 有人需要將一堆 .xls / .xlsx / .csv / .ods 檔案正規化為單一格式。

傳統的解決方案 — 本機安裝的 Excel 搭配巨集,或是自行伺服器上的大型 COM 元件 — 在擴展時會很痛苦,且難以跨平台維護。Aspose.Cells Cloud 用純 REST API 取代了這一切:上傳檔案,獲得新格式的檔案返回。

本文介紹了 Aspose.Cells Cloud 微服務中核心 ConversionController 所公開的三個轉換 API(來源:src/Aspose.Cells.Cloud.MicroService/Controllers/ConversionController.cs),並提供了可執行的 cURL、C#(.NET)、Python 和 Java 範例。

1. 轉換功能可以做什麼?

ConversionController 是專門用於 格式轉換/導出 的控制器。它將引擎層級的高保真轉換封裝為三組 HTTP API:

# 情境 Typical endpoint 功能說明
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 / image / CSV / JSON / HTML
  • 特定的儲存格範圍(例如 A1:C12) → PDF / image / CSV / JSON / HTML
  • 特定的表格 → PDF / image / CSV / JSON / HTML
  • 特定的圖表 → PNG / JPEG / BMP / GIF / SVG / TIFF / EMF / PDF

這樣您就永遠不必為了抓取一個圖表而轉換整個 50 MB 的工作簿 — 只轉換您需要的部分,節省頻寬和計算資源。


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, etc.

簡而言之:spreadsheet-to-spreadsheet 各種轉換,以及 整個 spreadsheet → PDF / image / web-data 輸出系列——全部位於單一 API 介面之下。

3. 開始前您需要的兩件事

  1. 在 Aspose Cloud Dashboard 上註冊免費帳戶,並建立應用程式以取得 Client ID 和 Client Secret(SDK 會自動將它們交換為 JWT — 無需自行建立驗證標頭)。
  2. 為您選擇的語言安裝 SDK:
<!-- .NET -->
<PackageReference Include="Aspose.Cells-Cloud" Version="25.x" />
# Python
pip install asposecellscloud
<!-- Java (Maven) — note: NOT on Maven Central, so the Aspose repo below is required -->
<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

# 1) First, get a 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

將 format 換成 csv、json、png、xlsx… 就會得到相應的格式。 一個參數,一種輸出格式。

② C# / .NET

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",   // local file path
    format: "pdf");                          // target: pdf / csv / json / png ...

using Stream result = cellsApi.ConvertSpreadsheet(request); // converted file stream
using var outFile = File.Create("C:/invoices/Book1.pdf");
result.CopyTo(outFile);

// Even simpler: point the SDK at an output path and let it write the file
// cellsApi.ConvertSpreadsheet(request, "C:/invoices/Book1.pdf");

需要批次作業嗎?將此放入目錄的迴圈中,即可完成 “將整個資料夾的 XLSX → PDF 轉換”。

③ Python

from asposecellscloud.apis.cells_api import CellsApi
from asposecellscloud.requests import ConvertSpreadsheetRequest
import os

instance = CellsApi(
    os.getenv('CellsCloudClientId'),
    os.getenv('CellsCloudClientSecret'))

# Local XLSX -> PDF, result written locally
instance.convert_spreadsheet(
    ConvertSpreadsheetRequest("Book1.xlsx", "pdf"),
    local_outpath="Book1.pdf")

# Other formats: just change the parameter — json / csv / xlsx / png ...

④ 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");   // local file path
        req.setFormat("pdf");                           // target: pdf / csv / json / png ...

File out = api.convertSpreadsheet(req);         // converted result as a File
        out.renameTo(new File("C:/invoices/Book1.pdf"));
        System.out.println("Converted: " + out.getAbsolutePath());
    }
}

四種語言,一個動作:提供路徑 + 格式參數 → 獲得目標檔案。這就是 Convert API 的全部賣點——呼叫端零 Excel 依賴,無模板,無 COM 元件。


5. 情境 2:直接轉換雲端儲存的檔案

當檔案已經存在於 Aspose Cloud Storage(或您的物件儲存)中時,您無需下載/上傳大型檔案——轉換在雲端完成,減少資料傳輸並提升大型活頁簿的效能:

# cloud Book1.xlsx -> PDF, downloaded locally
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
from asposecellscloud.apis.cells_api import CellsApi
from asposecellscloud.requests import ExportSpreadsheetAsFormatRequest

instance = CellsApi("YOUR_CLIENT_ID", "YOUR_CLIENT_SECRET")

# Convert a cloud-stored workbook straight to PDF
instance.export_spreadsheet_as_format(
    ExportSpreadsheetAsFormatRequest("Book1.xlsx", format="pdf", folder="Reports"))

您也可以深入到單一元素——例如將「the 3rd chart on Sheet1」渲染為 PNG(cloud-storage flavour):

# chart -> 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 以作存檔”。

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 '{}'
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"))
# Result is saved directly in cloud storage; returns CellsCloudResponse(Code=200, Status="OK")

您可以透過 SaveOptionsData 請求主體傳遞細緻的儲存選項,並可透過查詢參數控制 輸出檔案名稱、輸出儲存位置、自訂字型、區域/語系、密碼 等等 — 更多資訊請參閱下方的 工程細節。

7. 更多現成的「線上轉換」端點

除了上述工作簿層級的轉換外,控制器還提供了一整套專用的 local-file → specific-target 端點(與情境 1 相同的請求正文上傳),這些端點更為細緻且在頻寬使用上更省成本:

目標 端點 (PUT, 前綴 /v4.0/cells/convert/)
活頁簿 → PDF / JSON / CSV spreadsheet/pdf, spreadsheet/json, spreadsheet/csv
工作表 → PDF / JSON / CSV / HTML / HTML-Table 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 供下游系統使用」:

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 中的 chart 案例具有對應這些 v4.0 路由的類型封裝 — ConvertChartToImage (convert/chart/image) 和 ConvertChartToPdf (convert/chart/pdf)。
worksheet/*、range/* 和 table/* 變體目前尚無 v4.0 封裝,因此請直接使用純 REST 呼叫,就像上面的 cURL 所示。


8. 工程細節與錯誤處理

值得了解的轉換選項(查詢參數)

  • password — 開啟受密碼保護的工作簿;
  • fontsLocation / custom-font support — 在渲染 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 轉換器」。

覺得這很有用嗎?給它加星標、加入書籤或分享——並在評論中告訴我們您自己的試算表轉換使用案例。