在構建儀表板或電子郵件報告時,從表格數據生成預覽圖像是一個常見需求。 GroupDocs.Conversion Cloud SDK for Node.js 提供了強大的 API,能在伺服器端將 CSV 檔案轉換為高品質的 JPG 圖像。您將學習如何在 Node.JS 中使用該庫的非同步方法將 CSV 轉換為 JPG,查看完整的程式碼範例,探索等效的 cURL 呼叫,並發現用於微調輸出的配置選項。

將 CSV 轉換為 JPG(Node.JS) - 完整程式碼範例

此範例示範如何使用庫的非同步 API,將儲存在 GroupDocs Cloud 儲存體中的 CSV 檔案轉換為 JPG 圖像。

const { ConvertApi, ConvertSettings, ConvertOptions, FileInfo } = require("@groupdocs/conversion-cloud");

// Replace with your actual GroupDocs Cloud credentials
const clientId = "YOUR_CLIENT_ID";
const clientSecret = "YOUR_CLIENT_SECRET";

async function convertCsvToJpg() {
    // Initialize the Conversion API
    const convertApi = new ConvertApi(clientId, clientSecret);

// Source CSV file stored in GroupDocs Cloud storage
    const fileInfo = new FileInfo();
    fileInfo.filePath = "input.csv";

// Conversion options: CSV -> JPG
    const convertOptions = new ConvertOptions();
    convertOptions.fileInfo = fileInfo;
    convertOptions.format = "jpg";

// Conversion settings (output folder in storage)
    const convertSettings = new ConvertSettings();
    convertSettings.outputPath = "output_images";
    convertSettings.convertOptions = [convertOptions];

try {
        const result = await convertApi.convertDocument(convertSettings);
        console.log("Conversion completed. Generated files:");
        result.forEach(file => console.log(file.path));
    } catch (err) {
        console.error("Conversion failed:", err);
    }
}

convertCsvToJpg();

注意: 此代碼示例演示了核心功能。在將其用於您的項目之前,請確保更新文件路徑(input.csvoutput_images 等)以匹配實際文件位置,驗證所有必需的依賴項已正確安裝,並在開發環境中徹底測試。如果遇到任何問題,請參閱官方文檔或聯繫支援團隊尋求協助。

使用 cURL 和 REST API 進行 CSV 到 JPG 轉換

如果您偏好純粹的 REST 方法,則可以使用一系列 cURL 命令執行相同的轉換。

  1. 取得存取權杖 - 使用您的客戶端憑證進行驗證。
curl -X POST "https://api.groupdocs.cloud/v2.0/auth/token" \
     -H "Content-Type: application/json" \
     -d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_CLIENT_SECRET"}'
  1. 上傳來源 CSV - 將檔案放置於您的 GroupDocs Cloud 儲存空間。
curl -X POST "https://api.groupdocs.cloud/v2.0/storage/upload?path=input.csv" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -F "file=@/path/to/your/input.csv"
  1. 請求轉換 - 指定目標格式為 JPG.
curl -X POST "https://api.groupdocs.cloud/v2.0/conversion/convert?format=jpg" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"fileInfo":{"filePath":"input.csv"}}'
  1. 下載生成的圖像(s) - 從輸出資料夾取得檔案。
curl -X GET "https://api.groupdocs.cloud/v2.0/storage/download?path=output_images/your_image.jpg" \
     -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
     -o your_image.jpg

這些指令示範了一個完整的 CSV‑to‑JPG 工作流程,無需撰寫任何程式碼。如需更多詳細資訊,請參閱官方 API 文件

了解 Node.JS 中的 CSV 轉 JPG 流程

以下是前面顯示的程式碼的逐步說明:

  1. 初始化 API 客戶端 - new ConvertApi(clientId, clientSecret) 建立已驗證的會話。
const convertApi = new ConvertApi(clientId, clientSecret);
  1. 定義來源檔案 - FileInfo 物件指向儲存在 GroupDocs Cloud 中的 input.csv
const fileInfo = new FileInfo();
fileInfo.filePath = "input.csv";
  1. 設定轉換選項 - ConvertOptions.format = "jpg" 告訴服務產生 JPG 輸出。

    const convertOptions = new ConvertOptions();
    convertOptions.fileInfo = fileInfo;
    convertOptions.format = "jpg";
    
  2. 配置輸出設定 - ConvertSettings.outputPath 決定圖像將被保存的位置。

    const convertSettings = new ConvertSettings();
    convertSettings.outputPath = "output_images";
    convertSettings.convertOptions = [convertOptions];
    
  3. 執行轉換 - convertApi.convertDocument(convertSettings) 會發送請求並返回生成的檔案路徑陣列。

const result = await convertApi.convertDocument(convertSettings);

如需完整的類別和屬性清單,請參閱 API 參考

先決條件與設定

  1. Node.js runtime - 需要版本 12 或更高。
  2. GroupDocs Cloud account - 從 GroupDocs 入口網站取得 clientIdclientSecret
  3. Install the SDK - 執行以下指令(從官方發佈頁面下載套件):
npm install groupdocs-conversion-cloud
  1. 匯入 SDK 在您的專案中:
const { ConvertApi, ConvertSettings, ConvertOptions, FileInfo } = require("@groupdocs/conversion-cloud");

如需有關安裝的更多詳細資訊,請參閱下載頁面

轉換設定:選項與參數

SDK 暴露了多個可調整的屬性:

  • Output Path - 控制 JPG 檔案儲存的資料夾。
convertSettings.outputPath = "output_images";
  • 目標格式 - 如果需要 JPEG 變體,請將 "jpg" 更改為 "jpeg"
convertOptions.format = "jpeg";
  • Custom Dimensions - 您可以指定寬度和高度(如果支援),以產生具有精確尺寸的圖像。
convertOptions.width = 800;   // example width in pixels
convertOptions.height = 600;  // example height in pixels
  • 非同步執行 - SDK 方法返回 Promise,允許您將轉換整合到非同步工作流程中,而不會阻塞事件迴圈。
await convertApi.convertDocument(convertSettings);

這些選項讓您可以根據特定的自動化或整合需求,調整 CSV‑to‑JPG 工作流程。

結論

在 Node.JS 中將 CSV 轉換為 JPG 非常簡單,只需使用 GroupDocs.Conversion Cloud SDK for Node.js。該庫在雲端處理繁重的工作,讓您專注於業務邏輯和整合。請務必保護您的雲端憑證,選擇適當的輸出格式(JPG 或 JPEG),並根據工作流程調整尺寸或輸出路徑等設定。對於生產環境的部署,您需要購買授權;您可以在 臨時授權頁面 查看價格詳情並獲取臨時授權。使用提供的程式碼和 cURL 範例,您即可將 CSV‑to‑JPG 自動化功能加入任何後端服務。

常見問題

  • 如何在 Node.JS 中將 CSV 轉換為 JPG 而無需編寫自訂解析邏輯?
    SDK 直接從 GroupDocs Cloud 存儲讀取 CSV,並將每一行渲染為圖像,因此您不需要任何外部工具。只需遵循代碼示例或 cURL 工作流程。

  • 是否可以在後端將 CSV 轉換為 JPEG 而不是 JPG?
    是的。在程式碼中設定 convertOptions.format = "jpeg" 或在 REST 請求中使用 format=jpeg。兩種格式均支援於 Node.JS 的後端轉換。

  • 我可以非同步執行轉換以避免阻塞我的伺服器嗎?
    當然可以。所有 SDK 方法皆回傳 Promise,您可以使用 await 或附加 .then() 處理程序。這樣即可實現非阻塞、可擴展的 CSV 轉 JPG 自動化。

  • 我可以在哪裡找到更多 CSV 轉圖像的範例?
    官方 documentation 包含其他範例,社群論壇 GroupDocs Conversion Forum 是提問的好地方。

閱讀更多