在构建仪表板或电子邮件报告时,从表格数据生成预览图像是常见需求。 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. 下载生成的图像 - 从输出文件夹检索文件。
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";
  1. 配置输出设置 - ConvertSettings.outputPath 确定图像将保存的位置。

    const convertSettings = new ConvertSettings();
    convertSettings.outputPath = "output_images";
    convertSettings.convertOptions = [convertOptions];
    
  2. 执行转换 - 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 暴露了多个可调属性:

  • 输出路径 - 控制 JPG 文件存储的文件夹。
convertSettings.outputPath = "output_images";
  • 目标格式 - 将 "jpg" 更改为 "jpeg",如果您需要 JPEG 变体。
convertOptions.format = "jpeg";
  • 自定义尺寸 - 您可以指定宽度和高度(如果受支持),以生成具有精确尺寸的图像。
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 自动化添加到任何后端服务中。

FAQs

  • 如何在 Node.JS 中将 CSV 转换为 JPG 而无需编写自定义解析逻辑?
    SDK 直接从 GroupDocs Cloud 存储读取 CSV 并将每一行渲染为图像,因此您无需任何外部工具。只需遵循代码示例或 cURL 工作流。

  • 是否可以在后端将 CSV 转换为 JPEG 而不是 JPG?
    是的。在代码中将 convertOptions.format = "jpeg" 设置为 jpeg,或在 REST 请求中使用 format=jpeg。这两种格式在 Node.JS 的后端转换中均受支持。

  • 我可以异步运行转换以避免阻塞我的服务器吗?
    当然。所有 SDK 方法都返回 promises,因此您可以 await 它们或附加 .then() 处理程序。这使得非阻塞、可扩展的 CSV‑to‑JPG 自动化成为可能。

  • 在哪里可以找到更多 CSV 转图像的示例?
    官方文档包含更多示例,社区论坛GroupDocs Conversion Forum是提问的好地方。

阅读更多