如何在 Node.js 中在线将 SVG 转换为 PNG

如何在 Node.js 中在线将 SVG 转换为 PNG

SVG(可缩放矢量图形)定义了基于矢量图形的图形,这种图形常用于渲染二维图像。另一方面,PNG 图像格式是基于光栅的透明文件的最佳选择之一。当您处理像素和透明度时,PNG 是比 SVG 更好的选择。 SVG 也不适用于像照片这样具有大量细节、纹理和质量的图像。对于此类场景,您可以在线将 SVG 文件转换为 PNG 格式。那么让我们看看如何在 Node.js 中在线将 SVG 转换为 PNG。

本文应涵盖以下主题:

将 SVG 转换为 PNG API 和 Node.js SDK

在本文中,我们将使用 GroupDocs.Conversion Cloud 的 Node.js SDK 强大的库在 Nodejs 应用程序中将 SVG 转换为 PNG 格式。此 API 允许您将文档转换为您需要的任何格式。它支持转换 PDF、HTML、Word、Excel、PowerPoint, JPG、PNG、GIF、CAD等50多种文档和图像。它还提供.NET、Java、PHP、Ruby 、Android 和 Python SDK 作为 Cloud API 的文档转换家族成员

在控制台中使用以下命令将 GroupDocs.Conversion SVG 到 PNG 转换器免费下载库安装到您的 Node.js 应用程序:

npm install groupdocs-conversion-cloud

在开始执行步骤和可用代码示例之前,请从 仪表板 获取您的客户端 ID 和客户端密码。获得 ID 和密码后,添加如下所示的代码:

# 从 http://api.groupdocs.cloud 在您的节点应用程序中导入 Node.js SDK
global.groupdocs_conversion_cloud = require("groupdocs-conversion-cloud");
global.fs = require("fs");

// 从 https://dashboard.groupdocs.cloud 获取 clientId 和 clientSecret(需要免费注册)。
global.clientId = "xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx";
global.clientSecret = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
global.myStorage = "test-internal-storage";
const config = new groupdocs_conversion_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

如何在 Node.js 中在线将图像从 SVG 转换为 PNG

请按照以下说明在线将 SVG 代码转换为 PNG,如下所述:

  1. 上传 SVG文件到云端
  2. Convert SVG 转 PNG 而不会在 Node.js 中丢失质量
  3. 下载转换后的PNG文件

上传图片

首先,使用以下代码示例将 SVG 文件上传到云端:

// 从系统驱动器打开 IOStream 中的文件。
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.svg';
// 读取文件
fs.readFile(resourcesFolder, (err, fileStream) => {
  // 构建FileApi
  var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
  // 创建上传文件请求
  var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.svg", fileStream, myStorage);
  // 上传文件
  fileApi.uploadFile(request)
    .then(function (response) {
      console.log("Expected response type is FilesUploadResult: " + response.uploaded.length);
    })
    .catch(function (error) {
      console.log("Error: " + error.message);
    });
});

因此,上传的 SVG 文件将在云端仪表板的 文件部分 中可用。

在 Node.js 中在线将 SVG 转换为 PNG 高质量

在本节中,我们将按照以下步骤以编程方式在线将 SVG 转换为 PNG 透明背景:

  • 创建 ConvertApi 的实例
  • 接下来,创建 ConvertSettings 对象
  • 提供云存储名称
  • 设置输入 SVG 文件路径
  • 将“png”分配给格式
  • 提供输出文件路径
  • 创建 ConvertDocumentRequest
  • 最后,通过调用带有转换设置的 ConvertApi.convertDocument() 方法,将 SVG 更改为 PNG。

以下代码示例展示了如何在 Node.js 中使用 REST API 将在线 SVG 转换为 PNG 而不会降低质量:

// 如何在 Node.js 中在线将图像从 SVG 转换为 PNG

const convert = async () => {
  const convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

  const settings = new groupdocs_conversion_cloud.ConvertSettings();
  settings.storageName = myStorage;
  settings.filePath = "nodejs-testing/sample-file.svg";
  settings.format = "png";
  settings.outputPath = "nodejs-testing/sample-file.png";

  try {
    // 创建转换文档请求
    const request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
    await convertApi.convertDocument(request);
  }
  catch (err) {
    throw err;
  }
}

convert()
.then(() => {
  console.log("Successfully converted SVG to PNG without losing quality.");
})
.catch((err) => {
  console.log("Error occurred while converting SVG document:", err);
})
如何使用 Node.js 在线将 SVG 保存为 PNG 格式

在 Node.js 中在线将 SVG 高质量转换为 PNG

下载转换后的文件

上面的代码示例会将转换后的 PNG 文件保存在云端。您可以使用以下代码示例下载它:

// 构建 FileApi 以下载转换后的文件
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// 创建下载文件请求
let request = new groupdocs_conversion_cloud.DownloadFileRequest("nodejs-testing/sample-file.png", myStorage);
// 下载文件和响应类型 Stream
fileApi.downloadFile(request)
    .then(function (response) {
        // 将文件保存在系统目录中
        fs.writeFile("H:\\groupdocs-cloud-data\\sample-file.png", response, "binary", function (err) { });
        console.log("Expected response type is Stream: " + response.length);
    })
    .catch(function (error) {
        console.log("Error: " + error.message);
    });

使用高级选项在 Node.js 中在线将 SVG 文件转换为 PNG

请遵循并执行下面提到的步骤,使用一些高级设置将 SVG 图像转换为 PNG:

  • 首先,创建一个 ConvertApi 实例
  • 创建 ConvertSettings 实例
  • 现在,设置云存储值
  • 将 SVG 文件路径设置为输入文件
  • 将“png”分配给格式
  • 定义 PngConvertOptions
  • 设置各种转换设置,例如灰度、质量、旋转角度、usePdf 等。
  • 接下来,分配 convertOptions 和输出文件路径
  • 创建 ConvertDocumentRequest
  • 最后,通过调用 ConvertApi.convertDocument() 方法将 SVG 文档转换为 PNG 图像。

以下代码示例显示了如何使用高级转换选项将 SVG 转换为 PNG 高分辨率:

// 如何使用高级选项在 Node.js 中在线将 SVG 文件转换为 PNG

const convert_options = async () => {
  const convertApi = groupdocs_conversion_cloud.ConvertApi.fromKeys(clientId, clientSecret);

  const settings = new groupdocs_conversion_cloud.ConvertSettings();
  settings.storageName = myStorage;
  settings.filePath = "nodejs-testing/sample-file.svg";
  settings.format = "png";
  
  convertOptions = new groupdocs_conversion_cloud.PngConvertOptions()
  convertOptions.grayscale = true;
  convertOptions.fromPage = 1;
  convertOptions.pagesCount = 1;
  convertOptions.quality = 100;
  convertOptions.rotateAngle = 90;
  convertOptions.usePdf = false;

  settings.convertOptions = convertOptions;
  settings.outputPath = "nodejs-testing/sample-file.png";

  try {
    // 创建转换文档请求
    const request = new groupdocs_conversion_cloud.ConvertDocumentRequest(settings);
    await convertApi.convertDocument(request);
  }
  catch (err) {
    throw err;
  }
}

convert_options()
.then(() => {
  console.log("Successfully render SVG to PNG format with advanced options.");
})
.catch((err) => {
  console.log("Error occurred while converting the SVG file:", err);
})

免费 SVG 到 PNG 在线转换器

如何免费在线将 SVG 转换为 PNG?请尝试以下 免费在线 SVG 到 PNG 转换器。它是在线将 SVG 透明转换为 PNG 的最佳 SVG 到 PNG 转换器,并且是使用上述 API 开发的。

结论

在本文中,您已了解:

  • 如何在云端的Nodejs中在线将SVG转成PNG;
  • 如何使用高级选项在 Nodejs 中将 SVG 转换为透明 PNG;
  • 以编程方式上传文件,然后从云端下载转换后的文件;
  • 免费在线将 SVG 转换为 PNG;

您可以使用 文档 了解有关 GroupDocs.Conversion Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。

问一个问题

如果您在使用 API 时对 SVG 到 PNG 文件转换器有任何相关疑问,请随时通过我们的免费产品支持论坛 与我们联系。

常见问题

如何使用 Node.js 将 SVG 转换为 PNG?

请按照 此链接 学习用于轻松快速地将 SVG 转换为 PNG 的 Node.js 代码片段。

如何使用 REST API 在 Node.js 中在线从 SVG 更改为 PNG?

创建 ConvertApi 的实例,设置转换设置的值并使用 ConvertDocumentRequest 调用 convertDocument 方法以将 SVG 转换为 PNG。

我可以免费将 SVG 文件转换为 PNG 文件吗?

是的,您可以使用在线 SVG 文件到 PNG 转换器 免费将 SVG 文件转换为 PNG。在线 SVG 到 PNG 转换器允许您快速将 SVG 文件更改为 PNG 格式。 SVG 到 PNG 的转换过程完成后,您可以从云端下载 PNG 图像。

如何在线免费将 SVG 转换为 PNG?

  1. 打开我们的最好的 SVG 到 PNG 转换器软件
  2. 在文件放置区域内单击以上传 SVG 文件或拖放 SVG 文件。
  3. 单击立即转换按钮在线将 SVG 转换为具有透明背景的 PNG。
  4. 输出文件的下载链接将可用于在转换后立即将 SVG 导出为 PNG。

如何安装和下载 SVG 到 PNG 转换器库?

下载并安装 SVG 到 PNG JavaScript 库,以编程方式创建、处理和渲染 SVG 到 PNG 高分辨率。

如何在 Windows 10 中将 SVG 转换为 PNG?

请访问此链接以免费下载 SVG 到 PNG 转换器。这个免费的 SVG 到 PNG 转换器,只需单击一下即可在 Windows 中将 SVG 文件转换为 PNG 格式。

也可以看看

我们建议访问以下相关链接以了解更多信息: