
在 Node.js 中比较 PPTX 文件
我们可以比较两个或多个 PowerPoint 演示文稿文件,并在云端以编程方式突出显示差异。它有助于以编程方式识别演示文稿的不同版本中的更改。在本文中,我们将学习如何在 Node.js 中使用 REST API 比较两个或多个 PowerPoint 演示文稿。
这篇比较 powerpoint 文件的文章应涵盖以下主题:
- REST API 和 Node.js SDK 比较 PPTX 文件
- 在 Node.js 中使用 REST API 比较两个 PowerPoint 演示文稿
- 使用 Node.js 比较多个 PowerPoint 文件
- 在 Node.js 中使用 REST API 获取更改列表
REST API 和 Node.js SDK 比较 PPTX 文件
为了比较两个或多个 PPTX 文件,我们将使用 GroupDocs.Comparison Cloud 的 Node.js SDK API。它允许比较 支持的格式 的 2 个 powerpoint 文件,并在结果文件中找到差异。请在控制台中使用以下命令安装它:
npm install groupdocs-comparison-cloud
在执行上述步骤之前,请从仪表板获取您的客户端 ID 和密码。获得 ID 和密码后,添加如下所示的代码:
// 此代码示例演示如何在代码中添加 Client ID 和 Secret。
global.ClientId = "659fe7da-715b-4744-a0f7-cf469a392b73";
global.ClientSecret = "b377c36cfa28fa69960ebac6b6e36421";
global.myStorage = "";
const config = new groupdocs_comparison_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";
下面我们就来学习一下ppt文件的对比,比较两个ppt文件的差异。
在 Node.js 中使用 REST API 比较两个 PowerPoint 演示文稿
我们可以按照下面给出的简单步骤比较云端的两个 PowerPoint 文件:
- 上传 PPTX文件到云端。
- 比较上传的 PPTX 文件。
- 下载 生成的文件。
上传 PowerPoint 文件
首先,我们将使用以下代码示例将源和目标 PPTX 文件上传到云端:
// 此代码示例演示如何将多个文件上传到云端。
// 构造FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\comparison\\upload\\';
fs.readdir(resourcesFolder, (err, files) => {
files.forEach(file => {
// 读取文件
fs.readFile(resourcesFolder + file, (err, fileStream) => {
// 上传文件请求
let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
// 上传文件
fileApi.uploadFile(request);
});
});
});
因此,上传的 PowerPoint 文件将在仪表板的 文件部分 中可用,以比较云上的 powerpoint 文档。
在 Node.js 中比较 PowerPoint 文件
现在,我们将按照以下步骤以编程方式比较上传的 PowerPoint 文件的 ppt:
- 首先,创建 CompareApi 的实例。
- 接下来,设置输入源和目标 PPTX 文件路径。
- 然后,初始化 ComparisonOptions 对象并分配源文件和目标文件。
- 接下来,设置输出文件路径。
- 之后,创建带有 ComparisonOptions 作为参数的 ComparisonsRequest。
- 最后,使用 comparisons() 方法比较 powerpoint 幻灯片并获得结果。
以下代码示例展示了如何在 Node.js 中使用 REST API 比较两个 PowerPoint 文件。
// 此代码示例演示如何比较两个 PPTX 文件
// 初始化接口
let compareApi = groupdocs_comparison_cloud.比较Api.fromKeys(clientId, clientSecret);
// 源文件
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pptx";
// 目标文件
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pptx";
// 定义比较设置
let settings = new groupdocs_comparison_cloud.Settings();
// 比较灵敏度
settings.sensitivityOfComparison = 100;
// 定义比较选项
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "result.pptx";
options.settings = settings;
// 创建比较请求
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// 比较
let response = await compareApi.comparisons(request);
console.log("Output file link: " + response.href);

源和目标 PowerPoint 演示文稿文件。

在 Node.js 中比较 PowerPoint 文件
生成的 PPTX 文件还包含文档末尾的摘要幻灯片,如下所示:

下载结果文件
因此,上述代码示例将在云端保存一个新创建的包含更改的 PowerPoint 文件。可以使用以下代码示例下载它:
// 此代码示例演示如何从云端下载 PPTX 文件。
// 构造FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
// 创建下载文件请求
let request = new groupdocs_comparison_cloud.DownloadFileRequest("result.pptx", myStorage);
// 下载文件
let response = await fileApi.downloadFile(request);
// 保存在工作目录
fs.writeFile("C:\\Files\\comparison\\result.pptx", response, "binary", function (err) { });
使用 Node.js 比较多个 PowerPoint 文件
我们还可以按照以下步骤比较多个 PowerPoint 文档:
- 首先,创建 CompareApi 的实例。
- 接下来,设置输入源 PPTX 文件路径。
- 然后,设置多个目标 PPTX 文件路径。
- 接下来,初始化 ComparisonOptions 对象并分配源文件和目标文件。
- 然后,设置输出文件路径。
- 之后,创建带有 ComparisonOptions 作为参数的 ComparisonsRequest。
- 最后,使用 comparisons() 方法比较文件并获得结果。
以下代码示例展示了如何在 Node.js 中使用 REST API 比较多个 PowerPoint 文件。
// 此代码示例演示如何比较多个 PPTX 文件
// 初始化接口
let compareApi = groupdocs_comparison_cloud.比较Api.fromKeys(clientId, clientSecret);
// 源文件
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pptx";
// 目标文件 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target.pptx";
// 目标文件 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.pptx";
// 定义比较选项
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "result_Multiple.pptx";
// 创建比较请求
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);
// 比较
let response = await compareApi.comparisons(request);
console.log("Output file link: " + response.href);
在 Node.js 中使用 REST API 获取更改列表
我们可以按照以下给出的步骤获取在比较 PowerPoint 文件期间发现的所有更改的列表:
- 首先,创建 CompareApi 的实例。
- 接下来,设置输入源 PPTX 文件路径。
- 然后,设置目标 PPTX 文件路径。
- 接下来,初始化 ComparisonOptions 对象。
- 然后,分配源/目标文件并设置输出文件路径。
- 之后,使用 ComparisonOptions 对象作为参数创建 PostChangesRequest。
- 最后调用postChanges()方法获取结果。
以下代码示例展示了如何在 Node.js 中使用 REST API 获取更改列表。
// 此代码示例演示如何获取所有更改的列表。
// 初始化接口
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);
// 源文件
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pptx";
// 目标文件
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pptx";
// 定义比较选项
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "result.pptx";
// 创建比较请求
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);
let changes = await compareApi.postChanges(request);
// 显示结果
console.log("Changes count: " + changes.length);
changes.forEach(change => {
console.log(change.id + 1 +"- Target Text: " + change.targetText + ", Text: " + change.text + ", Type: " + change.type);
});
Changes count: 4
1- Target Text: Document Comparison, Text: Shape, Type: Inserted
2- Target Text: undefined, Text: Shape, Type: Deleted
3- Target Text: Document Comparison REST API & Node.js SDK, Text: Node.js , Type: Deleted
4- Target Text: Document Comparison REST API & Node.js SDK, Text: Node.js , Type: Inserted
在线试用
如何免费在线比较两个ppt文件?请尝试使用以下免费的在线 PPTX 比较工具进行 powerpoint 演示文稿比较。这个在线比较ppt的比较powerpoint模板免费软件是使用上述API开发的。 https://products.groupdocs.app/comparison/pptx
结论
在本文中,我们学习了如何:
- 在 Node.js 中比较两个或多个 PowerPoint 文件;
- 获取插入和删除项目的列表;
- 以编程方式将多个 PPTX 文件上传到云端;
- 从云端下载 PPTX 文件。
此外,您可以使用 文档 了解有关 GroupDocs.Comparison Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。如有任何歧义,请随时在论坛上与我们联系。