我們可以比較兩個或多個 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);
生成的 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 並與之交互。如有任何歧義,請隨時在論壇上與我們聯繫。