您可能需要以编程方式将 word 文档页面提取到多个文档中。通过拆分 word 文档,您可以轻松地从 word 文档中提取页面,并与利益相关者共享特定的信息或数据。作为 Node.js 开发人员,您可以在线将 word 文档提取到云端的单独文件中。在本文中,您将学习如何使用 Node.js 在线从 word DOC/DOCX 中提取页面。
本文应涵盖以下主题:
- Word Page Extractor 在线 REST API 和 Node.js SDK
- 通过准确的页码将 Word 中的页面提取到新文档中
- 在 Node.js 中使用 REST API 按页面范围提取 Word 文档页面
Word 页面提取器在线 REST API 和 Node.js SDK
为了从 Word 文档中提取页面,我将使用 GroupDocs.Merger Cloud 的 Node.js SDK API。它是在线 Word 页面提取器免费下载库。它允许您从 Word、Excel、PowerPoint支持的文档格式 中拆分、组合、提取、删除和重新排列单个页面或页面集合]、Visio 绘图、PDF 和 HTML。
您可以安装 GroupDocs.Merger cloud 以在控制台中使用以下命令从您的 Node.js 应用程序中提取 Word 页面:
npm install groupdocs-merger-cloud
在执行上述步骤之前,请从仪表板获取您的客户端 ID 和密码。获得 ID 和密码后,添加如下所示的代码:
# 从 http://api.groupdocs.cloud 在您的节点应用程序中导入 Node.js SDK
global.groupdocs_merger_cloud = require("groupdocs-merger-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_merger_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";
通过精确页码从 Word 中提取页面到新文档中
您可以按照以下简单步骤以编程方式从云端的 Word 文件中导出特定页面:
上传Word文件
首先,使用下面给出的代码示例将 Word 文件上传到云端:
// 从系统驱动器打开 IOStream 中的文件。
var resourcesFolder = 'H:\\groupdocs-cloud-data\\input-sample-file.docx';
// 读取文件
fs.readFile(resourcesFolder, (err, fileStream) => {
// 构建FileApi
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// 创建上传文件请求
var request = new groupdocs_merger_cloud.UploadFileRequest("input-sample-file.docx", 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);
});
});
因此,上传的 Word 文件将在云上仪表板的 文件部分 中可用。
在 Node.js 中使用 REST API 提取 Word 页面
您可以按照以下步骤轻松地以编程方式提取 Word 文件的页面:
- 首先,创建 PagesApi 的实例。
- 创建 ExtractOptions 的实例。
- 创建 FileInfo 的实例。
- 然后,设置输入 Word 文件的路径。
- 接下来,设置提取的 Word 文件的路径。
- 在逗号分隔数组中设置特定页码以提取 Word 文件。
- 使用 ExtractOptions 创建 ExtractRequest。
- 最后,用 ExtractRequest 调用 pagesApi.extract() 方法得到结果。
以下代码片段展示了如何使用 Node.js 中的 REST API 将 Word 页面提取到单独的文件中:
// 如何通过准确的页码从 Word 中提取页面到新文档中
const extractwordpages = async () => {
// 接口初始化
global.pagesApi = groupdocs_merger_cloud.PagesApi.fromKeys(clientId, clientSecret);
// 定义提取选项
let options = new groupdocs_merger_cloud.ExtractOptions();
options.fileInfo = new groupdocs_merger_cloud.FileInfo();
options.fileInfo.filePath = "nodejs-testing/input-sample-file.docx";
options.outputPath = "nodejs-testing/output-sample-file.docx";
options.pages = [2, 4, 7];
try {
// 创建提取请求
let extractRequest = new groupdocs_merger_cloud.ExtractRequest(options);
// 从 docx 文件中提取页面
let result = await pagesApi.extract(extractRequest);
}
catch (err) {
throw err;
}
}
extractwordpages()
.then(() => {
console.log("Successfully extract Word DOC pages: ");
})
.catch((err) => {
console.log("Error occurred while extracting pages from Word file:", err);
})
下载提取的文件
上面的代码示例会将分离的文件保存在云端。您可以使用以下代码示例下载它们:
// 构造FileApi下载合并后的文件
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(config);
// 创建下载文件请求
let request = new groupdocs_merger_cloud.DownloadFileRequest("nodejs-testing/output-sample-file.docx", myStorage);
// 下载文件和响应类型 Stream
fileApi.downloadFile(request)
.then(function (response) {
// 将文件保存在系统目录中
fs.writeFile("H:\\groupdocs-cloud-data\\output-sample-file.docx", response, "binary", function (err) { });
console.log("Expected response type is Stream: " + response.length);
})
.catch(function (error) {
console.log("Error: " + error.message);
});
在 Node.js 中使用 REST API 按页面范围提取 Word 文档页面
您可以按照以下步骤以编程方式提供一系列页码,从而分别从 Word 中提取和保存页面:
- 首先,创建 PagesApi 的实例。
- 创建 ExtractOptions 的实例。
- 创建 FileInfo 的实例。
- 然后,设置输入 Word 文件的路径。
- 接下来,设置提取的 Word 文件的路径。
- 设置 startPageNumber 和 endPageNumber 值。
- 然后,将 rangeMode 设置为 EvenPages 或 OddPages
- 使用 ExtractOptions 创建 ExtractRequest。
- 最后,用 ExtractRequest 调用 pagesApi.extract() 方法得到结果。
以下代码片段显示了如何在 Node.js 中使用页面范围和页面模式从 Word 在线提取页面:
// 如何在 Node.js 中使用 REST API 按页面范围提取 Word 文档页面
const extractpages = async () => {
// 接口初始化
global.pagesApi = groupdocs_merger_cloud.PagesApi.fromKeys(clientId, clientSecret);
// 定义提取选项
let options = new groupdocs_merger_cloud.ExtractOptions();
options.fileInfo = new groupdocs_merger_cloud.FileInfo();
options.fileInfo.filePath = "nodejs-testing/input-sample-file.docx";
options.outputPath = "nodejs-testing/output-sample-file.docx";
options.startPageNumber = 1;
options.endPageNumber = 10;
options.rangeMode = groupdocs_merger_cloud.ExtractOptions.RangeModeEnum.EvenPages;
try {
// 创建提取请求
let extractRequest = new groupdocs_merger_cloud.ExtractRequest(options);
// 提取Word文件页面
let result = await pagesApi.extract(extractRequest);
}
catch (err) {
throw err;
}
}
extractpages()
.then(() => {
console.log("Successfully extratcing pages of Word document.");
})
.catch((err) => {
console.log("Error occurred while extracting pages from Word file.", err);
})
类似地,您可以从 Word 文档中提取奇数页。
在线试用
如何在线从Word文档中提取页面?请尝试使用以下免费在线 Word 提取工具 从 Word 在线免费提取页面。这个 Word 页面提取器免费在线工具是使用上述 API 开发的。
结论
在本文中,您已了解:
- 如何使用 REST API 从在线 Word 文档中提取某些页面;
- 如何使用页面范围和范围模式过滤器从 Word 文档中提取页面;
- 将Word文件上传到云端,从Word在线导出选定的页面;
- 从云端下载并保存 Word 的某些页面;
- 如何从Word中免费提取页面;
现在,您知道如何从 Word 文档中提取所有页面或如何保存 Word 的某些页面。 API 还使您能够重新排序或替换文档页面、更改页面方向、管理文档密码以及对任何支持的文件格式轻松执行其他操作。此外,您可以使用 文档 了解有关 GroupDocs.Merge Cloud API 的更多信息。我们还提供了一个 API 参考 部分,让您可以直接通过浏览器可视化我们的 API 并与之交互。
问一个问题
您可以通过我们的 免费支持论坛 询问有关 word 页面提取器以从 Word 导出选定页面的问题
常见问题
如何将Word中的多页提取到一个文件中?
安装 JS 库 以编程方式在线将 Word 文件分成多个页面。您可以访问文档 了解完整的 API 详细信息。
从 Word 中提取特定页面需要多长时间?
JavaScript HTML to Word 库 运行速度非常快,您可以在几秒钟内轻松地从受保护的 Word 中提取页面。