在 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/