Microsoft PowerPoint 是一种演示文稿和幻灯片应用程序,可让您创建幻灯片演示文稿。在某些情况下,您需要在线将 PowerPoint PPT 或 PPTX 转换为 PNG 格式。例如,您需要在应用程序中以只读模式显示 PPT/PPTX 演示文稿,或者您可能需要为每张 PowerPoint 幻灯片创建缩略图等。在本文中,我们将学习如何将 PowerPoint PPT/PPTX 转换为 PNG在 Node.js 中。
本文应涵盖以下主题:
- PowerPoint 到图像转换器 REST API 和 Node.js SDK
- 如何在 Node.js 中在线将 PowerPoint 转换为 PNG 图片
- 使用高级选项将 PowerPoint 转换为 PNG 图像
PowerPoint 到图像转换器 REST API 和 Node.js SDK
在本文中,我们将使用 GroupDocs.Conversion Cloud 的 Node.js SDK API 在 Node.js 应用程序中将 PPT 或 PPTX 转换为 PNG 格式。此 API 允许您将文档转换为您需要的任何格式。支持Word、Excel、PowerPoint, PDF、HTML、JPG、PNG、CAD等50多种文档和图片的转换。它还为云 API 提供 .NET、Java、PHP、Ruby、Android 和 Python SDK 作为其文档转换家族成员。
您可以在控制台中使用以下命令将 GroupDocs.Conversion Cloud 安装到您的 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 中在线将 PowerPoint 转换为 PNG 图片
您可以按照下面给出的简单步骤将 PowerPoint 转换为 PNG 图像文件:
上传图片
首先,使用以下代码示例将 PowerPoint 文件上传到云端:
// 从系统驱动器打开 IOStream 中的文件。
var resourcesFolder = 'H:\\groupdocs-cloud-data\\sample-file.pptx';
// 读取文件
fs.readFile(resourcesFolder, (err, fileStream) => {
// 构建FileApi
var fileApi = groupdocs_conversion_cloud.FileApi.fromConfig(config);
// 创建上传文件请求
var request = new groupdocs_conversion_cloud.UploadFileRequest("sample-file.pptx", 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);
});
});
因此,上传的 PowerPoint 文件将在云端仪表板的 文件部分 中可用。
使用 Node.js 在线将 PowerPoint 转换为 PNG
请按照下面提到的步骤以编程方式将 PowerPoint 转换为 PNG 文件:
- 创建 ConvertApi 的实例
- 创建 ConvertSettings 实例
- 设置 PowerPoint 文件路径
- 将“png”分配给格式
- 提供输出文件路径
- 创建 ConvertDocumentRequest
- 通过调用ConvertApi.convertDocument()方法获取结果
以下代码示例展示了如何使用 Node.js 中的 REST API 将 PowerPoint 转换为 PNG 而不会降低质量:
// 如何使用 Node.js 将 PowerPoint 文件转换为 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.pptx";
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 PPT to PNG file format.");
})
.catch((err) => {
console.log("Error occurred while converting the PowerPoint file:", err);
})
下载转换后的文件
上面的代码示例会将转换后的 PowerPoint 文件保存在云端。您可以使用以下代码示例下载它:
// 构建 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);
});
使用高级选项将 PowerPoint 转换为 PNG 图像
请按照下面提到的步骤使用带有一些高级设置的 PowerPoint 到 PNG 在线转换器 API:
- 创建一个 ConvertApi 的实例
- 创建 ConvertSettings 实例
- 设置 PowerPoint 文件路径
- 将“png”分配给格式
- 提供输出文件路径
- 定义 PngConvertOptions
- 设置各种转换设置,例如 dpi、图像质量、高度、边距(顶部、左侧、右侧、底部)等。
- 创建 ConvertDocumentRequest
- 调用ConvertApi.convertDocument()方法获取结果
以下代码示例显示了如何使用高级转换选项将 PowerPoint 在线转换为 PNG 格式:
// 如何使用高级选项在 Node.js 中将 PowerPoint PPT 转换为 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.pptx";
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("Converted PPT to PNG image with advanced options.");
})
.catch((err) => {
console.log("Error occurred while converting the PPTX file:", err);
})
PowerPoint 到 PNG 在线转换器
如何免费在线将 PowerPoint 转换为图像?请尝试使用上述 API 开发的以下 PPTX 到 PNG 转换器。
结论
在本文中,您已了解:
- 如何在云端将PPT/PPTX转PNG格式;
- 如何使用高级选项将 PPT/PPTX 转换为 PNG 到 PNG;
- 以编程方式上传文件,然后从云端下载转换后的文件;
您可以使用 文档 了解有关 GroupDocs.Conversion Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。
问一个问题
您可以通过我们的免费支持论坛 询问有关 PPT/PPTX 到 PNG 转换器的问题