在 Node.js 中使用 REST API 重新排列 PDF 頁面

PDF 是最流行的共享和打印文檔格式。在某些情況下,我們可能需要重新排序或交換 PDF 文件中的頁面。我們可以通過在雲上以編程方式移動或交換 PDF 文檔中的特定頁面,將雜亂無章的 PDF 文件轉換為結構良好的文檔。在本文中,我們將學習如何在 Node.js 中使用 REST API 重新排列 PDF 頁面。

本文應涵蓋以下主題:

用於重新排列 PDF 頁面的 REST API 和 Node.js SDK

為了重新排列 PDF 文檔中的頁面,我們將使用 GroupDocs.Merger Cloud 的 Node.js SDK API。它允許在 支持的文檔格式 中拆分、組合、刪除和重新排列單個頁面或頁面集合。請在控制台中使用以下命令安裝它:

npm install groupdocs-merger-cloud

在執行上述步驟之前,請從儀表板獲取您的客戶端 ID 和密碼。獲得 ID 和密碼後,添加如下所示的代碼:

// 此代碼示例演示如何在代碼中添加您的客戶端 ID 和密碼。
global.clientId = '659fe7da-715b-4744-a0f7-cf469a392b73';
global.clientSecret = 'b377c36cfa28fa69960ebac6b6e36421';
global.myStorage = "";

const configuration = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";

在 Node.js 中使用 REST API 重新排列 PDF 頁面

我們可以通過以下步驟在雲端以編程方式將任何頁面移動到 PDF 文檔中的新位置來重新排列頁面:

  1. 上傳PDF文件到雲端
  2. 重新排序頁上傳的PDF文件
  3. 下載更新文件

上傳 PDF 文件

首先,我們將使用下面給出的代碼示例將 PDF 文件上傳到雲端:

// 此代碼示例演示如何將 PDF 文件上傳到雲端。
// 構造FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let file = 'C:\\Files\\merger\\sample.pdf';

// 一個一個讀取文件
fs.readFile(file, (err, fileStream) => {
  // 創建上傳文件請求
  let request = new groupdocs_merger_cloud.UploadFileRequest("sample.pdf", fileStream, myStorage);
  // 上傳文件
  fileApi.uploadFile(request);
});

因此,上傳的 PDF 文件將在雲端儀表板的 文件部分 中可用。

使用 Node.js 重新排序 PDF 頁面

現在,我們將按照以下步驟對上傳的 PDF 文件的頁面進行重新排序:

  • 首先,創建 PagesApi 的實例。
  • 接下來,提供上傳的 PDF 文件路徑。
  • 然後,設置輸出文件路徑。
  • 接下來,設置當前頁碼和新頁碼。
  • 之後,使用 MoveOptions 作為參數創建 MoveRequest。
  • 最後,調用 move() 方法並保存更新後的文檔。

以下代碼示例展示瞭如何在 Node.js 中使用 REST API 對 PDF 頁面重新排序。

// 此代碼示例演示如何在 PDF 文檔中移動頁面。
// 接口初始化
let pagesApi = groupdocs_merger_cloud.PagesApi.fromKeys(clientId, clientSecret);

// 初始化移動選項
let options = new groupdocs_merger_cloud.MoveOptions();

// 輸入文件路徑
options.fileInfo = new groupdocs_merger_cloud.FileInfo();
options.fileInfo.filePath = "sample.pdf";

// 輸出文件路徑
options.outputPath = "move-pages.pdf";

// 要移動的頁面
options.pageNumber = 1;

// 在哪個位置移動
options.newPageNumber = 4;

// 創建移動請求
let request = new groupdocs_merger_cloud.MoveRequest(options);

// 移動頁面
let result = await pagesApi.move(request);
console.log("Document edited: " + result.path);
在 Node.js 中使用 REST API 重新排列 PDF 頁面

在 Node.js 中使用 REST API 重新排列 PDF 頁面

下載更新文件

最後,上面的代碼示例會將更新後的 PDF 文件保存在雲端。可以使用以下代碼示例下載它:

// 此代碼示例演示如何從雲端下載 PDF 文件。
// 初始化接口
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);

// 創建文件下載請求
let request = new groupdocs_merger_cloud.DownloadFileRequest("move-pages.pdf", myStorage);

// 下載文件
let response = await fileApi.downloadFile(request);

// 在工作目錄中保存 PDF 文件
fs.writeFile("C:\\Files\\merger\\move-pages.pdf", response, "binary", function (err) { });

使用 Node.js 交換 PDF 頁面

我們可以按照以下步驟交換 PDF 文檔中兩頁的位置:

  • 首先,創建 PagesApi 的實例。
  • 接下來,提供上傳的 PDF 文件路徑。
  • 然後,設置輸出文件路徑。
  • 接下來,設置第一頁碼和第二頁碼。
  • 之後,使用 SwapOptions 作為參數創建 SwapRequest。
  • 最後,調用 swap() 方法並保存更新後的文檔。

以下代碼示例展示瞭如何使用 Node.js 中的 REST API 交換 PDF 文檔中的兩個頁面。

// 此代碼示例演示如何在 PDF 文檔中交換頁面。
// 接口初始化
let pagesApi = groupdocs_merger_cloud.PagesApi.fromKeys(clientId, clientSecret);

// 初始化交換選項
let options = new groupdocs_merger_cloud.SwapOptions();

// 輸入文件路徑
options.fileInfo = new groupdocs_merger_cloud.FileInfo();
options.fileInfo.filePath = "sample.pdf";

// 輸出文件路徑
options.outputPath = "swap-pages.pdf";

// 要交換的第一頁碼
options.firstPageNumber = 2;

// 要交換的第二頁碼
options.secondPageNumber = 4;

// 創建交換請求
let request = new groupdocs_merger_cloud.SwapRequest(options);

// 交換頁面
let result = await pagesApi.swap(request);
console.log("Document edited: " + result.path);
在 Node.js 中使用 REST API 交換 PDF 頁面

在 Node.js 中使用 REST API 交換 PDF 頁面

在線試用

請嘗試以下使用上述 API 開發的免費在線工具來移動或交換文檔頁面。 https://products.groupdocs.app/merger/pdf

結論

在本文中,我們學習瞭如何:

  • 在 Node.js 中重新排序和交換 PDF 文檔的頁面;
  • 將 PDF 文件上傳到雲端;
  • 從雲端下載更新的 PDF。

此外,您可以使用 文檔 了解有關 GroupDocs.Merge Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。如有任何歧義,請隨時通過 [fo][17] 與我們聯繫。

也可以看看

[17]: https://forum.groupdocs.cloud/c/editor/)[rum](https://forum.groupdocs.cloud/c/merger/